PHP中文手册 阅读笔记2
要初始化一个对象,用 new 语句将对象实例到一个变量中。
如果将一个对象转换成对象,它将不会有任何变化。如果其它任何类型的值被转换成对象,内置类 stdClass 的一个实例将被建立。如果该值为 NULL,则新的实例为空。对于任何其它的值,名为 scalar 的成员变量将包含该值。
由于资源类型变量保存有为打开文件、数据库连接、图形画布区域等的特殊句柄,因此无法将其它类型的值转换为资源。
很少需要用某些 free-result 函数来手工释放内存。
NULL 类型只有一个值,就是大小写敏感的关键字 NULL。
有些诸如 call_user_function() 或 usort() 的函数接受用户自定义的函数作为一个参数。Callback 函数不仅可以是一个简单的函数,它还可以是一个对象的方法,包括静态类的方法。
PHP 4 引入了新的花括号语法来访问字符串的字符,以免与数组复制混淆。
$i站点is = 'mansikka'; // 合法变量名;可以用中文
使用引用赋值,简单地将一个 & 符号加到将要赋值的变量前(源变量)。前后两个值将一变俱变。
有一点重要事项必须指出,那就是只有有名字的变量才可以引用赋值。
PHP 超全局变量
$GLOBALS
包含一个引用指向每个当前脚本的全局范围内有效的变量。该数组的键名为全局变量的名称。从 PHP 3 开始存在 $GLOBALS 数组。
$_SERVER
变量由 web 服务器设定或者直接与当前脚本的执行环境相关联。
$_GET
经由 URL 请求提交至脚本的变量。
$_POST
经由 HTTP POST 方法提交至脚本的变量。
$_COOKIE
经由 HTTP Cookies 方法提交至脚本的变量。
$_FILES
经由 HTTP POST 文件上传而提交至脚本的变量。
$_ENV
执行环境提交至脚本的变量。
$_REQUEST
经由 GET,POST 和 COOKIE 机制提交至脚本的变量,因此该数组并不值得信任。
$_SESSION
当前注册给脚本会话的变量。
C语言中全局变量自动生效,但是PHP 中全局变量在函数中使用时必须用global关键字申明为引用全局变量。
对于一个函数能够申明的全局变量的最大个数,PHP 没有限制。
在全局范围内访问变量的第二个办法,是用特殊的 PHP 自定义 $GLOBALS 数组,使用 $GLOBALS 替代 global
变量范围的另一个重要特性是静态变量(static variable)。静态变量仅在局部函数域中存在,但当程序执行离开此作用域时,其值并不丢失。如果在声明中用表达式的结果对静态变量赋值会导致解析错误
static 和 global 定义是以引用 的方式实现的。例如,在一个函数域内部用 global 语句导入的一个真正的全局变量实际上是建立了一个到全局变量的引用。