摘要: 常量是一个简单值的标识符(名字)。如同其名称所暗示的,在脚本执行期间该值不能改变(除了所谓的魔术常量,它们其实不是常量)。常量默认为大小写敏感。按照惯例常量标识符总是大写的。常量名和其它任何 PHP 标签遵循同样的命名规则。合法的常量名以字母或下划线开始,后面跟着任何字母,数字或下划线。用正则表达式是这样表达的:[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*注: 在这里,字母是 a-z,A-Z,以及从 127 到 255(0x7f-0xff)的 ASCII 字符。和 superglobals 一样,常量的范围是全局的。不用管作用域就可以在脚本的任何地方访问常量 阅读全文
posted @ 2011-10-25 16:35 南山砍柴的 阅读(193) 评论(0) 推荐(0)
摘要: HTML 表单(GET 和 POST)当一个表单体交给 PHP 脚本时,表单中的信息会自动在脚本中可用。有很多方法访问此信息,例如:例子 7-8. 一个简单的 HTML 表单<form action="foo.php" method="POST"> Name: <input type="text" name="username"><br> Email: <input type="text" name="email"><br 阅读全文
posted @ 2011-10-25 16:34 南山砍柴的 阅读(269) 评论(0) 推荐(0)
摘要: 有时候使用可变变量名是很方便的。就是说,一个变量的变量名可以动态的设置和使用。一个普通的变量通过声明来设置,例如:<?php$a = "hello";?>一个可变变量获取了一个普通变量的值作为这个可变变量的变量名。在上面的例子中 hello 使用了两个美元符号($)以后,就可以作为一个可变变量的变量了。例如:<?php$$a = "world";?>这时,两个变量都被定义了:$a 的内容是“hello”并且 $hello 的内容是“world”。因此,可以表述为:<?phpecho "$a ${$a}"; 阅读全文
posted @ 2011-10-25 16:33 南山砍柴的 阅读(225) 评论(0) 推荐(0)
摘要: 变量的范围即它定义的上下文背景(译者:说白了,也就是它的生效范围)。大部分的 PHP 变量只有一个单独的范围。这个单独的范围跨度同样包含了 include 和 require 引入的文件。范例:<?php$a = 1;include "b.inc";?>这里变量 $a 将会在包含文件 b.inc 中生效。但是,在用户自定义函数中,一个局部函数范围将被引入。任何用于函数内部的变量按缺省情况将被限制在局部函数范围内。范例:<?php$a = 1; /* global scope */function Test(){ echo $a; /* reference 阅读全文
posted @ 2011-10-25 16:30 南山砍柴的 阅读(376) 评论(0) 推荐(0)
摘要: PHP 提供了大量的预定义变量。由于许多变量依赖于运行的服务器的版本和设置,及其它因素,所以并没有详细的说明文档。一些预定义变量在 PHP 以命令行形式运行时并不生效。有关这些变量的详细列表,请参阅“保留的预定义变量”一章。警告 PHP 4.2.0 以及后续版本中,PHP 指令 register_globals 的默认值为 off。这是 PHP 的一个主要变化。让 register_globals 的值为 off 将影响到预定义变量集在全局范围内的有效性。例如,为了得到 DOCUMENT_ROOT 的值,你将必须使用 $_SERVER['DOCUMENT_ROOT'] 代替 $ 阅读全文
posted @ 2011-10-25 16:24 南山砍柴的 阅读(383) 评论(0) 推荐(0)
摘要: 基础PHP 中一个美元符号后面跟上一个变量名称,即表示一个变量。变量的名称是对大小写敏感的。变量名与 PHP 中其它的标签一样遵循相同的规则。一个有效的变量名由字母或者下划线开头,后面跟上任意数量的字母,数字,或者下划线。按照正常的正则表达式,它将被表述为:'[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*'注: 字母为 a-z,A-Z,ASCII 字符从 127 到 255(0x7f-0xff)。<?php$var = "Bob";$Var = "Joe";echo "$var, $Var 阅读全文
posted @ 2011-10-25 16:23 南山砍柴的 阅读(130) 评论(0) 推荐(0)
摘要: PHP 在变量定义中不需要(或不支持)明示的类型定义;变量类型是根据使用该变量的上下文所决定的。也就是说,如果你把一个字符串值赋给变量 var,var 就成了一个字符串。如果你又把一个整型值赋给 var,那它就成了一个整数。PHP 的自动类型转换的一个例子是加号“+”。如果任何一个运算数是浮点数,则所有的运算数都被当成浮点数,结果也是浮点数。否则运算数会被解释为整数,结果也是整数。注意这并没有改变这些运算数本身的类型;改变的仅是这些运算数如何被求值。<?php$foo = "0"; // $foo is string (ASCII 48)$foo += 2; // $ 阅读全文
posted @ 2011-10-25 16:22 南山砍柴的 阅读(120) 评论(0) 推荐(0)
摘要: mixedmixed 说明一个参数可以接受多种不同的(但并不必须是所有的)类型。gettype() 表明可以接受所有的 PHP 类型,例如 str_replace() 将接受字符串和数组。numbernumber 说明一个参数可以是 integer 或者 float。callback有些诸如 call_user_function() 或 usort() 的函数接受用户自定义的函数作为一个参数。Callback 函数不仅可以是一个简单的函数,它还可以是一个对象的方法,包括静态类的方法。一个 PHP 函数用函数名字符串来传递。您可以传递任何内建的或者用户自定义的函数,除了 array(), ech 阅读全文
posted @ 2011-10-25 16:17 南山砍柴的 阅读(117) 评论(0) 推荐(0)
摘要: 特殊的 NULL 值表示一个变量没有值。NULL 类型唯一可能的值就是 NULL。注: NULL 类型是 PHP 4 引进的。在下列情况下一个变量被认为是 NULL:被赋值为 NULL。尚未被赋值。被 unset()。语法NULL 类型只有一个值,就是大小写敏感的关键字 NULL。<?php$var = NULL;?>参见 is_null() 和 unset()。 is_null(PHP 4 >= 4.0.4)is_null -- 检测变量是否为 NULL 描述bool is_null ( mixed var)如果 var 是 null 则返回 TRUE,否则返回 FALSE 阅读全文
posted @ 2011-10-25 16:16 南山砍柴的 阅读(734) 评论(0) 推荐(0)
摘要: 永久的数据库连接是指在您的脚本结束运行时不关闭的连接。当收到一个永久连接的请求时。PHP 将检查是否已经存在一个(前面已经开启的)相同的永久连接。如果存在,将直接使用这个连接;如果不存在,则建立一个新的连接。所谓“相同”的连接是指用相同的用户名和密码到相同主机的连接。对 WEB 服务器的工作和分布负载没有完全理解的读者可能会错误地理解永久连接的作用。特别的,永久连接不会在相同的连接上为您提供建立“用户会话”的能力,也不提供有效建立事务的能力。实际上,从严格意义上来讲,永久连接不会给您提供任何非永久连接无法提供的特殊功能。为什么?这和 WEB 服务器工作的方式有关。您的 WEB 服务器可以用三种 阅读全文
posted @ 2011-10-25 16:14 南山砍柴的 阅读(293) 评论(0) 推荐(0)