php学习知识点
1、PHP 代码被包含在特殊的起始符和结束符中 <? ?>
2、php的用途
服务端脚本
命令行脚本。
编写桌面应用程序。
3、输出语句、文本 echo printf
4、$_SERVER 是一个特殊的 PHP 保留变量,它包含了 web 服务器提供的所有信息。
可以用来输出浏览器版本信息 $_SERVER['HTTP_USER_AGENT']
5、strpos() 其功能是在一个字符串中搜索另外一个字符串。
6、htmlspecialchars() 使得 HTML 之中的特殊字符被正确的编码,从而不会被使用者在页面注入 HTML 标签或者 Javascript代码。
7、超全局变量 $_POST 超全局变量 $_GET
超全局变量 $_REQUEST,它包含了所有 GET、POST、COOKIE 和 FILE 的数据
8、如果想查看某个表达式的值和类型,用 var_dump()
9、如果只是想得到一个易读懂的类型的表达方式用于调试,用 gettype()。要查看某个类型,不要用 gettype(),而用 is_type函数(is_int)
10、如果要将一个变量强制转换为某类型,可以对其使用强制转换或者 settype() 函数
11、PHP 支持8种基本的数据类型。
boolean (布尔型) integer (整型) float (浮点型, 也称作 double) string (字符串)
两种复合类型:array (数组) object (对象)
最后是两种特殊类型:resource (资源) NULL (NULL)
12、最大值可以用常量PHP_INT_MAX
13、如果给定的一个数超出了 integer 的范围,将会被解释为 float。同样如果执行的运算结果超出了 integer 范围,也会返回 float。
14、要明确地将一个值转换为 integer,用 (int) 或 (integer) 强制转换。 可以通过函数 intval() 来将一个值转换成整型。
15、编码 参考函数 utf8_encode()和 utf8_decode()。
16、如果想要输出一个单引号,需在它的前面加个反斜线\。在单引号前或在字符串的结尾处 想要输出反斜线,输入两条\\。
17、第三种定义字符串的方法是用heredoc句法结构:<<<。在该提示 符后面,要定义个标识符,然后是一个新行。接下来是字符串 本身,最后要用前面定义的标识符作为结束标志。
18、nowdoc结构也用和heredocs结构一样的标记 <<<, 但是跟在后面的标志符要用 单引号括起来,就像<<<'EOT'这样
19、 由于 { 无法被转义,只有 $ 要紧挨着 {才会被认出来,可以用 {$ 来表达 {$。
20、 函数 substr() 和 substr_replace()可以用来实现多于一个字符 的情况。
21、字符串可以用'.' (点) 操作符连接起来,
22、一个值可以通过在其前面加上(string)或用strval()函数来转变成 字符串。
23、如果字符串 没有包含 '.','e'或'E' 并且数字值符合整数类型的限定 ( PHP_INT_MAX定义的), 这个 字符串 可被认定是一个 integer, 在其它情况下被认定为一个float。
24、 array() 语言结构来新建一个 array。它接受任意数量用逗号分隔的 键(key) => 值(value) 对。
25、如果 $arr 还不存在,将会新建一个。这也是一种定义数组的替换方法。要改变一个值,只要给它赋一个新值。如果要删除一个键名/值对,要对它用 unset()。
array( key => value , ... )
如果给出方括号但没有指定键名,则取当前最大整数索引值,新的键名将是该值 + 1。如果当前还没有整数索引,则键名将为 0。如果指定的键名已经有值了,该值将被覆盖。 $arr[] = 56;
26、应该始终在用字符串表示的数组索引上加上引号。例如用 $foo['bar'] 而不是 $foo[bar]。
27、可能使用 array_diff() 和数组运算符来比较数组。
28、要创建一个新的对象 object, 使用 new 语句实例化一个类:
<?php
class foo
{
function do_foo()
{
echo "Doing foo.";
}
}
$bar = new foo;
$bar->do_foo();
?>
29、如果将一个对象转换成对象,它将不会有任何变化。如果其它任何类型的值被转换成对象,将会实例化一个内置类 stdClass 的对象。如果该值为 NULL,则新的实例为空。数组转换成对象将使键名成为属性名并具有相对应的值。对于任何其它的值,名为 scalar 的成员变量将包含该值。
<?php
$obj = (object) 'ciao';
echo $obj->scalar; // outputs 'ciao'
?>
30、特殊的 NULL 值表示一个变量没有值。NULL 类型唯一可能的值就是 NULL。
在下列情况下一个变量被认为是 NULL:
被赋值为 NULL。 尚未被赋值。 被 unset()。
将一个变量转换为 null 类型将会删除该变量并且unset它的值。
31、PHP 中的变量用一个美元符号后面跟变量名来表示。变量名是区分大小写的。
32、isset() 语言结构可以用来检测一个变量是否已被初始化。
33、使用了两个美元符号($)以后,就可以作为一个可变变量的变量了。例如:
<?php
$$a = 'world';
?>
34、Cookies 是一种在远端浏览器端存储数据并能追踪或识别再次访问的用户的机制。可以用 setcookie() 函数设定 cookies。
35、常量是一个简单值的标识符(名字) define() 函数来定义常量
如果只想检查是否定义了某常量,用 defined() 函数。
36、PHP 支持一个错误控制运算符:@。当将其放置在一个 PHP 表达式之前,该表达式可能产生的任何错误信息都被忽略掉。@ 运算符只对表达式有效。对新手来说一个简单的规则就是:如果能从某处得到值,就能在它前面加上 @ 运算符。