数,此时print作为表达式的一部分,而echo不能。
输出运算符: = ?>
注意:在使用这种方式时,只有将php.ini文件中的short_open_tag选项设置为On,他才会有效。
Print_r函数:对于复合数据类型的输出,经常使用print_r函数。使用print_r函数输出数组中的元素或对象的成员变量时,将按照“键“=>值的形式输出。
create by zhang on time 2013-7-3 上午08:54:30
*/
class Person{
public $name=\张三\; public $sex=\男\;
}
$person=new Person(); print_r($person); echo \;
$words=array(\,\); print_r($words); ?>
Person Object ( [name] => 张三 [sex] => 男 ) Array ( [0] => browser [1] => application )
常量:常量一旦定义,常量的值和数据类型将不再改变。PHP中常量分为自定义常量和预定义常量。
自定义常量使用函数define()定义。
define(name ,value,[boolean case_insensitive])
case_insensitive默认为FALSE表示常量名name大小写敏感,case_insensitive为TRUE表示name大小写不敏感。 注意:
1) 常量使用define()函数定义,常量名前不加“$”符号 2) 常量名首字母必须是字母或者下划线
3) 常量一经定义,值不能在程序执行过程中修改。
预定义常量:
1)_FILE_ 当前正在处理的脚本文件名,若使用在一个被引用的文件中(include或require)那么它的值就是被引用的文件,而不是引用它的那个文件。 2)_LINE_ 正在处理的脚本文件的行号
3)PHP_VERSION 当前PHP预处理器的版本 4)PHP_OS PHP所处的操作系统的类型。 5) TRUE 6)FALSE 7)NULL
8)DIRECTORY_SEPARATOR:表示目录分隔符。UNIX或者Linux是”/”,win是”\\”.
create by zhang on time 2013-7-3 上午10:41:16
*/
echo __FILE__; echo \; echo __LINE__; echo \;
echo PHP_VERSION; echo \; echo PHP_OS; echo \;
echo DIRECTORY_SEPARATOR; ?>
变量:变量名是大小写敏感的。 变量的赋值方式: 1) 传值赋值方式
create by zhang on time 2013-7-3 下午02:59:16
*/
$age1=18; $age2=$age1; $age2=20;
echo $age1;//18 echo \; echo $age2;//20 ?>
注意:当执行$age2=$arg1语句时,内存中并没有新增变量$age2的变量值
18,这是PHP为了提高内存的使用效率,采用了“写时拷贝”的原理对对象进行赋值。简言之,除非发生写(或修改)操作,否则指向同一个地址的变量值或者对象不会被拷贝。 2) 传地址赋值方式
create by zhang on time 2013-7-3 下午03:05:05
*/
$age1=18;
$age2=&$age1; $age2=20; echo $age1; echo \; echo $age2; ?>
PHP通过在变量前添加”&”符号实现传地址赋值。
可变变量:可变变量允许程序动态的改变一个变量的变量名,可变变量用一个变量的“值”作为另一个变量的“名”。
$name=\;
$$name=20;//用$$name取代$age。代码等价于:$age=20 echo $age; ?>
有关变量或者常量状态的函数: 1) gettype()
该函数需要变量名(带$符号)或者常量名作为参数,返回变量或者常量的数据类型。 2)var_dump()
该函数需要变量名(带$符号)或者常量名作为参数,可以得到变量或者常量的数据类型以及对应的值。
注意:在调用函数时函数名大小写不敏感.
3)defined()
检查常量是否经过定义。参数为常量名(常量名必须带双引号或者单引号)。
如果定义了,返回TRUE,否则返回FALSE。 4)isset()函数
检查变量是否定义。
注意:isset()只能用于判断变量是否定义,传递其他参数都将造成程序解析错误。defined()只能用于判断常量是否定义,传递其他参数返回结果永远为FALSE。
5) 取消变量定义unset()函数
使用unset()函数只是断开了变量名和变量值之间的关系,没有立即销毁变量,变量由PHP的垃圾回收机制在适当的时候进行回收。 不能使用unset()函数取消常量的定义,否则造成程序解析错误。
6) 检查变量是否为空
bool empty(mixed var)
使用empty()函数时,变量为空的意义为: 变量的值为””,0,”0”,0.0,NULL,FALSE,或array()。都视为空。Empty只能用于检测变量是否为空,传递其他参数都将造成程序解析错误。
is_null()
检查变量是否为null 下面的情况认为是null: 变量未经定义. 变量的值赋值为NULL
变量经unset()函数处理后。
7) 数据类型检查函数
is_boll is_string is_int,is_integer,is_long is_double,is_float,is_real is_numeric is_scalar is_array is_object is_resource
PHP中特殊的比较运算符:
如果$a和$b值相等,结等于 $a==$b 果为TRUE 如果$a和$b值相等,类全等 $a===$b 型也相等,返回TRUE $a!=$b 不等 $a<>$b 果为TRUE 如果$a和$b值不相等,非全等 $a!==$b 或者他们的数据类型不同结果为TRUE 注意:PHP中比较运算符会将类型不同的两个数据自动转换为相同类型的数据后
如果$a和$b值不相等结 检测变量或者常量是否为布尔型 检测变量或者常量是否为字符串 检测变量或者常量是否是整数 检测变量或者常量是否为浮点型 检测变量或者常量是否为数字或数字字符串 检测变量或者常量是否为标量数据类型 检测变量或者常量是否为数组 检测变量或者常量是否为对象 检测变量或者常量是否为资源类型