PHP开发宝典-PHP基础
1、php标记
1)XML更风格
<?php echo "这是xml标记风格" ?>
2)脚本风格
<script language="php" echo "这是脚本风格" /script>
3)短标记风格
<? echo "这是短标记风格" ?>
要使用短标记风格,需要将php.in中的short_open_tag 设置为true
4)ASP风格
<% echo "这是ASP标记风格" %>
2、注释
支持单行注释://
多行注释:/* */
shell风格注释:#
注意:单行注释中不要出现?> 因为解释器会把它当做php脚本去执行。
3、常量
1)声明常量:define(常量名称,常量值,指定大小写敏感)
注:指定大小写敏感为可选项,默认为false,表示敏感
2)获取常量值
constant(常量名称)
3)判断常量是否已被定义
defined(常量名称)
实例:
<?php /** * 定义使用常量. * * @author xyw * @version 1.0 * @package main */ define("XYW", 20); //默认大小写敏感 echo constant("XYW"); echo "<br>"; echo constant("xyw"); echo "<br>"; echo defined("XYW"); echo "<br>"; echo defined("xyw"); echo "<br>"; define("SCY", 21, true);//大小写不敏感 echo constant("SCY"); echo "<br>"; echo constant("scy"); echo "<br>"; echo defined("SCY"); echo "<br>"; echo defined("scy"); echo "<br>"; ?>
4、预定义常量
列举几个:
__FILE__:默认常量,php文件名。
__LINE__:默认常量,php程序行数。
TRUE:真值true。
FALSE:假值false。
NULL:空值null
E_ERROR:指到最近的错误处。
E_WARING:指到最近的警告处。
E_NOTICR:这个常量为发生异常,但不一定是错误处。
注:__FILE__ 是两个下划线。
5、变量
定义:$变量名称 = 变量的值
命名规则:
1)变量名前必须加$,表示是一个变量
2)可以以_开头,不能以数字开头。
3)区分大小写
6、变量赋值方法
1)直接赋值
$a = 10;
2)传值赋值
$a = 10;
$b = $a;
3)引用赋值
$a = 10;
$b = &$a; //将变量a的地址赋值给变量b,此时变量a和b指向同一块内存地址。
7、变量作用域
1)局部变量:在函数内部定义的变量,其作用域在函数内部
2)全局变量:定义在所以函数之外的变量。
在函数体内部使用全局变量的方法为:在函数体内部用global声明一个与全局变量同名的变量
<?php $a = 10; function example(){ global $a; echo "在函数内部使用全局变量:".$a."<br>" } >
3)静态变量
在变量前面加static。在函数内部声明静态变量,当函数调用结束后,静态变量的值不会失效。
<?php function func() { static $a = 10; $a += 1; echo $a."<br>"; } // end func func(); func(); func(); ?>
4)可变变量
定义:变量前加$$
可变变量的名称是由另一个变量的值确定的。
<?php /** * Short description. * * @author CU * @version 1.0 * @package main */ $a = "xyw"; $$a = "scy"; echo $a."<br>"; echo $$a."<br>"; echo $xyw."<br>"; ?>
结果为:
xyw
scy
scy
8、数据类型
基本类型:
boolean、string、integer、float。
注:php定义字符串的方式有3种:单引号('),双引号(''),界定符(<<<).
注意:单引号和双引号的区别:双引号中的变量会自动被替换成实际数值。
复合数据类型:
array(数组)、object(对象)
特殊数据类型:
resource(资源)、null(空值)。被赋予为空值的情况:
没有任何赋值、赋值为null、被unset()函数处理后。
9、数据类型转换
变量前加小括号,把目标类型写在括号内。
注:null、0、未赋值的变量或数组会被转换为false
转换为整型:布尔false转换0,true为1;浮点型舍去小数;字符串如果以数字开头,截取到非数字位,否则为0;
10、检测数据类型
is_bool()、is_string() 、is_float()/is_double()、 is_integer()/is_int()、 is_null() 、is_array() 、is_object()、 is_numeric()
11、运算符
算术运算符:+ - * / %
字符串运算符:只有一个,即点(.),用于连接字符串。
赋值运算符:= 、+=、-=、*=、/=、.=、%=
位运算符:&(与)、|(或)、^(异或)、~(非)、<<(左移)、>>(右移)
递增递减运算符:++、--
逻辑运算符:&&、||或者or、xor、!
比较运算符:<、> 、<=、 >=、 ==、 !=、 ===(恒等)、 !==(非恒等)
注:恒等是指数值还有数据类型都相同时为true。非恒等,数值不等并且数据类型不同时,返回true。
三元运算符:?: