php中变量的定义
① php预定义变量有哪些
PHP 提供了大量的预定义变量。这些变量将所有的外部变量表示成内建环境变量,并且将错误信息表示成返回头。
预定义变量又叫超全局变量,包括:(推荐学习:PHP视频教程)
$_GET、$_POST、$_SERVER、$_REQUEST、$GLOBALS、$_COOKIE、$_SESSION、$_ENV、$_FILES 、$php_errormsg 、$HTTP_RAW_POST_DATA、$http_response_header、$argc、$argv
预定义变量的作用域称为“超全局作用域”:全局作用域 + 局部作用域的总和(函数内外全都可用)
超全局变量都是数组!
例如,$_GET变量(数组):
get这个词,常常出现在这里:<form action=”abc.php” method=”get” >.....</form>
这叫做“表单以get方式提交数据”
则$_GET这个预定义数组变量,就是指以这种方式提交的所有数据的集合(数组)
对应来说,也可以以post方式提交数据
注意:get这个词,似乎没有中文翻译。
实际上,在网页中,以get方式提交数据有多种形式:
形式一:
<form action=”abc.php” method=”get” >
项目1: <input type=”text” name=”uName” />
项目2: <input type=”password” name=”uPswd” />
<input type=”submit” value=”提交” />
</form>其作用是:用户填写表单数据,并提交后,会将数据发送(提交)给页面abc.php,其实也可以理解为“打开”该网页(abc.php),还可以理解为“请求”该网页(abc.php)
形式二:
<a href=”abc.php?uName=test1&uPswd=123” > 文字。。</a>其作用是:用户点击链接后,会将数据发送(提交)给页面abc.php,其实也可以理解为“打开”该网页(abc.php),还可以理解为“请求”该网页(abc.php),这种请求也是get请求
形式三:
<script>
location.href = “abc.php?uName=test1&uPswd=123”; //利用location对象的属性href
</script>其作用是:当该行语句执行的时候(通常其实是在函数中),会将数据发送(提交)给页面abc.php,其实也可以理解为“打开”该网页(abc.php),还可以理解为“请求”该网页(abc.php),这种请求也是get请求
形式四:
<script>
location.assign( “abc.php?uName=test1&uPswd=123”); //利用location对象的方法assign()
</script>其作用是:当该行语句执行的时候(通常其实是在函数中),会将数据发送(提交)给页面abc.php,其实也可以理解为“打开”该网页(abc.php),还可以理解为“请求”该网页(abc.php),这种请求也是get请求
② php 定义变量
<?php//常量声明!defined("PI") or define("PI", 3.14);//变量声明$var = value; //value可以为值类型、引用类型、NULL、布尔类型、资源类型?>
③ PHP项目如何定义一个变量,在任何页面都可以来回修改
办法只有两个,意识用内存缓存,如memcached之类的,二是用文件缓存,把变量存入一个文件每次读取,修改后写入。
如果是个人全局的,可以写入session或cookies,如果是任何人都看到一样的,那就只能用上面的内存或文件缓存了。
④ php怎么定义变量
c 是错的,因为第一个符号不能用数字
⑤ 什么是PHP变量
常量是一个简单值的标识符(名字)。如同其名称所暗示的,在脚本执行期间该值不能改变(除了所谓的魔术常量,它们其实不是常量)。常量默认为大小写敏感。按照惯例常量标识符总是大写的。(更多PHP知识相关推荐阅读:什么是PHP开发?PHP开发都用什么工具?)
常量名和其它任何 PHP 标签遵循同样的命名规则。合法的常量名以字母或下划线开始,后面跟着任何字母,数字或下划线。用正则表达式是这样表达的:[a-zA-Z_x7f-xff][a-zA-Z0-9_x7f-xff]*
注: 在这里,字母是 a-z,A-Z,以及从 127 到 255(0x7f-0xff)的 ASCII 字符。
和 superglobals 一样,常量的范围是全局的。不用管作用域就可以在脚本的任何地方访问常量。有关作用得更多信息请阅读手册中的变量范围。
语法
可以用 define() 函数来定义常量。一个常量一旦被定义,就不能再改变或者取消定义。
常量只能包含标量数据(boolean,integer,float 和 string)。
可以简单的通过指定其名字来取得常量的值,不要在常量前面加上 $ 符号。如果常量名是动态的,也可以用函数 constant() 来读取常量的值。用 get_defined_constants() 可以获得所有已定义的常量列表。
注: 常量和(全局)变量在不同的名字空间中。这意味着例如 TRUE 和 $TRUE 是不同的。
如果使用了一个未定义的常量,PHP 假定你想要的是该常量本身的名字,如同你用字符串调用它一样(CONSTANT 对应 "CONSTANT")。此时将发出一个 E_NOTICE 级的错误。参见手册中为什么 $foo[bar] 是错误的(除非你事先用 define() 将 bar 定义为一个常量)。如果你只想检查是否定义了某常量,用 defined() 函数。
常量和变量不同:
常量前面没有美元符号($);
常量只能用 define() 函数定义,而不能通过赋值语句;
常量可以不用理会变量范围的规则而在任何地方定义和访问;
常量一旦定义就不能被重新定义或者取消定义;
常量的值只能是标量。
以上来自上海优就业老师进行的总结,关于上海IT培训PHP开发更多了解:网页链接
⑥ 谁知道PHP中静态变量是什么意思急!
静态变量,简单的说,就是一种在特定范围内一直存在的变量,你可以把全局变量当作一种静态变量,它的值在代码运行期间一直存在。
通常来说,静态局部变量大多用于特殊场合里,比如,当在某函数中,希望每次运行函数时,都使用上次函数的结果,此时除使用全局变量外,就可以使用静态变量。
以下是关于静态局部变量特点的一些资料说明:
1.不会随着函数的调用和退出而发生变化,不过,尽管该变量还继续存在,但不能使用它。倘若再次调用定义它的函数时,它又可继续使用,而且保存了前次被调用后留下的值。
2.静态局部变量只会初始化一次。
3.静态属性只能被初始化为一个字符值或一个常量,不能使用表达式。即使局部静态变量定义时没有赋初值,系统会自动赋初值0(对数值型变量)或空字符(对字符变量);静态变量的初始值为0。
4.当多次调用一个函数且要求在调用之间保留某些变量的值时,可考虑采用静态局部变量。虽然用全局变量也可以达到上述目的,但全局变量有时会造成意外的副作用,因此仍以采用局部静态变量为宜。
PHP里,定义静态变量使用static 进行修饰。比如
static$avar=0;
⑦ php如何实现真正的全局变量
首先明确一点 php的全局变量可以分为
1.自定义的全局变量
通过关键字 global 声明变量为全局变量
$a =1;function bb(){ global $a;}
2.系统自带的全局变量
php系统自带的全局变量也有很多 ,也是可以去使用的,例如:$_SERVER (主要存储http 请求相关的信息)$_REQUEST (默认情况下包含了 $_GET,$_POST 和 $_COOKIE 的数组)$_POST (主要是http POST 请求的参数)$_GET (主要是http GET 请求的参数)$_FILES (主要是http 文件相关的参数)$_ENV (是一个包含服务器端环境变量的数组)$_COOKIE (主要是存储浏览器临时缓存的信息)$_SESSION (主要是php 服务 会话存储信息)