PHP读书笔记(一)

记录一些PHP基础学习的容易被忽略的知识点

(一)对于任何简单类型的变量,都可以将变量写入到一个由双引号引起来的字符串,如

          echo "$tireqty tires
";

在双引号中,变量名称将被变量值所替代。而在单引号中,变量名称,或者任何其他文本都会不经修改而发送给浏览器。

(二)heredoc语法,用来指定字符串,通过指定一个用来结束字符串的结束标记,Heredoc语法允许指定长字符串。

            echo <<

                    line 1

                    line 2

                    line 3

            theEnd

       theEnd标记非常模糊,它只需要保证不会出现在文本中,要关闭一个heredoc字符串,可以再每一行的开始处放置一个关闭标记。

       Heredoc字符串是插补的,就像双引号字符串。

(3)PHP标识符是区分大小写的,而函数名称可以使任意大小写的。

(4)PHP有两个特殊的类型:NULL和resource。特定的内置函数(例如数据库函数)将返回resource类型的变量。它们都代表外部资源(例如数据库连接)。基本上不能直接操作一个resource变量,但是通常它们都被函数返回,而且必须作为参数传递给其他函数。

(5)声明和使用常量,define('TIREPRICE', 100); 常量一旦被设定,在脚本的其他地方就不能再更改。为了使代码变得更容易阅读和维护,常量名称都是由大写字母组成的。

常量和变量之前的一个重要的不同点在于引用一个常量的时候,它没有前面并没有$符号。

常量和变量的另一个差异在于常量只可以保存布尔值、整数、浮点数或字符串数据。这些类型都是标量数据。

(6)错误抑制操作符@可以在任何表达式前面使用,即任何有值得或者可以计算出值得表达式之前,例如 $a= @( 57 / 0 );

如果没有@操作符,这一行代码将产生一个除0警告。使用这个操作符,这个警告就会被抑制住。如果通过这种方法抑制了一些警告,一旦遇到一个警告,就要写一些错误处理代码。

(7)执行操作符实际上是一对操作符,它是一对反向单引号(``) 反向单引号之间的命令当做服务器端的命令行来执行。表达式的值就是命令的执行结果。

例如,在类似于UNIX的操作系统,可以使用:$out = `ls -la`;  在windows服务器上,可以使用:$out = `dir c:`

这两个版本都会得到一个目录列表并且将该列表保存在$out中。

(8)类型操作符instanceof。允许检查一个对象是否是特定类的实例。例如:

class sampleClass { };

$myObject = new sampleClass();

if ($myObject   instanceof   sampleClass)
{

   echo "myObject is an instance of sampleClass";

}

(9)print 和 echo都不是真正的函数,但是可以用带有参数的函数形式进行调用,二者都可以当做一个操作符:只要将要显示的字符串放置在echo或print关键字之后。

print要比echo的速度慢。

(10)一些测试函数:

gettype(mixed var);  返回一个包含类型名称的字符串:bool、int、double(对于浮点型)、string、array、object和resource。如果变量类型不死标准类型之一,该函数就会返回“unknown type”。

settype($a , 'double');

is_array()   //检查变量是否是数组

is_double()、is_float()、is_real()   //检查变量是否是浮点数

is_long()、is_int()、is_integer()  //检查变量是否是整数。

is_string()  //检查变量是否是字符串

is_bool()  //检查变量是否是布尔值。

is_object() //检查变量是否是一个对象

is_resource() //检查变量是否是一个资源

is_null()  //检查变量是否为null

is_scalar() //检查该变量时否是标量,即,一个整数、布尔值、字符串或浮点数。

is_numeric() //检查该变量是否是任何类型的数字或数字字符串。

is_callable()  //检查该变量是否是有效的函数名称。

isset() //检查变量是否存在

unset() // 销毁一个变量

empty() //检查一个变量是否存在,以及它的值是否为非空和非0,相应的返回值为true或false。

(11)变量的重解释

int  intval(mixed var [, int base]);  允许在要转换的变量为字符串时指定转换的进制基数。(这样,就可以将十六进制的字符串转换为整数)。

float  floatval(mixed var);

string strval(mixed var);

(12)当switch语句中的特定case被匹配时,PHP将执行该case下的代码,直到遇到break语句。如果没有break语句switch将执行这个case以下所有值为true的case中的代码。当遇到一个break语句时,才会执行switch后面的语句。

你可能感兴趣的:(PHP)