NULL
";
$var = true;
var_dump($var); //boolean
echo "
";
$var = 10;
var_dump($var); //int
echo "
";
$var = 10.12;
var_dump($var); //float
echo "
";
$var = "hello world";
var_dump($var); //string
echo "
";
echo "以下是两种复合类型:
";
$var = array("one", "two", "three");
var_dump($var); //array
echo "
";
class Demo {
var $one = 10;
var $two = 20;
var $three = 30;
}
$var = new Demo;
var_dump($var); //object
echo "
";
echo "以下输出两种特殊的类型:
";
$var = mysql_connect("localhost", "root", "");
var_dump($var); //object
echo "
";
$var = null;
var_dump($var); //object
echo "
";
bool 类型:
允许if($bool){ }
假值只有以下几种:
boolean false int:0 float:0.0 string: "" "0" array()空串 object:无单元对象(PHP4) null
整型与浮点型:
PHP不支持无符号,溢出转float 不区分double float 不能用==判等
字符串的定义
string是一系列字符。在 PHP 中,字符和字节一样,也就是说,一共有 256 种不同字符的可能性。这也暗示 PHP 对 Unicode 没有本地支持。
注: 一个字符串变得非常巨大也没有问题,PHP 没有给字符串的大小强加实现范围,所以完全没有理由担心长字符串。
单引号:指定一个简单字符串的最简单的方法是用单引号(字符 ')括起来。
要表示一个单引号,需要用反斜线(\)转义,和很多其它语言一样。如果在单引号之前或字符串结尾需要出现一个反斜线,需要用两个反斜线表示。注意如果试图转义任何其它字符,反斜线本身也会被显示出来!所以通常不需要转义反斜线本身。
注: 单引号字符串中出现的变量不会被变量的值替代
双引号:如果用双引号(")括起字符串,PHP 懂得更多特殊字符的转义序列:
注:双引号字符串最重要一点是其中的变量名会被变量值替代。此外,如果试图转义任何其它字符,反斜线本身也会被显示出来!
定界符:另一种给字符串定界的方法使用定界符语法(“<<<”)。应该在 <<< 之后提供一个标识符,然后是字符串,然后是同样的标识符结束字符串。
定界符中标识符的命名规则与变量的命名规则一样。只能包含字母数字下划线,而且必须以下划线或非数字字符开始。
注:结束标识符所在的行不能包含任何其它字符,可能除了一个分号(;)之外。这尤其意味着该结束标识符不能被缩进,而且在分号之前和之后都不能有任何空格或制表符。如果破坏了这条规则使得结束标识符不“干净”,则它不会被视为结束标识符,PHP 将继续寻找下去。如果在这种情况下找不到合适的结束标识符,将会导致一个在脚本最后一行出现的语法错误。
不能用定界符语法初始化类成员。用其它字符串语法替代。
定界符文本的表现和双引号字符串一样,只是没有双引号
PHP的其它数据类型
"bar", 12 => true);
?>
do_foo(); //通过对象bar调用方法do_foo输出: Doing foo.
?>
自动转化:
见上图 p.s.Float->int时若上溢则取int 的最大值 字符串转化成整型只取开头的连续数字,若字符串开头没有数字,转化失败,返回0
测试函数:
变量类型的测试函数:
is_bool():判断是否是布尔型
is_int()、is_integer()和is_long():判断是否为整型。
is_float()、is_double()和is_real():判断是否为浮点型
is_string():判断是否为字符串
is_array():判断是否为数组
is_object():判断是否为对象
is_resource():判断是否为资源类型
is_null():判断是否为null
is_scalar():判断是否为标量
is_numberic():判断是否是任何类型的数字和数字字符串
is_callable():判断是否是有效的函数名
函数:bool settype ( mixed var, string type ) 是将变量 var 的类型设置成 type。
常量
常量是一个简单值的标识符(名字)。如同其名称所暗示的,在脚本执行期间一个常量一旦被定义,就不能再改变或取消定义。常量默认为大小写敏感。按照惯例常量标识符总是大写的。
常量名和其它任何 PHP 标签遵循同样的命名规则。合法的常量名以字母或下划线开始,后面跟着任何字母,数字或下划线。
常量的范围是全局的。不用管作用域就可以在脚本的任何地方访问常量。
我们可以用 define() 函数来定义常量。
常量: 一旦声明, 这个常量的值就 不会被改变
* 1. 常量是使用函数 define()声明的
* 2. 如果常量没有声明, 则常量名在使用时, 会自动转为字符串(效率很低)
* 3. 常量名称,不要加 $符号
* 4. 常量名称,默认是区分大小写的 one two three ONETWOTHREE, 习惯上常量名称要全部大写
* 5. 可以使用define()第三个参数来决定是否让这个常量名称区分大小写 true false 默认false是区分
* 6. 常量的值只支持标量数据类型
* 7 . 常量不能使用 unset() 清除一个常量
* 8. 可以使用defined(); 判断一个常量是否存在
$root = "localhost";
define("ROOT", 10, true);
if(defined("ROOT")) {
echo ROOT+10;
}else{
echo "11111111111";
}
echo constant("ROOT");
echo ROOT;
echo '
';
var_dump(get_defined_constants());//用来获取已定义的常量列表
魔术常量:虽然是常量 但是在不同地方出现代表值不同
test();
p.s。都过去20天了,才学到这里