1,PHP变量的定义和作用域
字幕下划线开头 ^[a-zA-Z_]\w*
函数内部为生命 global的为局部作用域
声明global或者 在文件级别的 变量 为全局作用域
PHP默认为值传递,引用传递可以改变值传递效果
超全局变量
$GLOBAL保存全局变量
$_SERVER保存服务器信息
$_GET保存get数据
$_POST保存post数据
$_FILES保存提交的文件
$_COOKIE保存得到的cookie
$_SESSION保存session数据
$_REQUEST保存请求数据
$_ENV保存环境
2,PHP的常量
define()函数用来定义常量
defined()函数用来判断常量是否被定义
特点:常量定义不$,常量的作用域为全局作用于,不能被重新赋值
魔术常量:常用 __FILE__获得当前二年间的绝对路径和文件名
__LINE__ 文件当前的行号
3,PHP运算符
4,PHP控制结构
return函数中使用return立即停止函数的执行,将函数的值返回;
在php脚本中使用,会立即停止脚本文件代码的执行
包含文件不存在或者语法错误的时候require是致命的,include不是 require需要放在头部预先载入,而include放在文件的任何位置随时载入
还有一对扩展函数:require_once() include_once()
5,PHP函数
函数参数的传递默认是值传递,所以即使在函数内部改变了参数的值,也不会改变函数外面参数的值
想要函数的参数采用引用传递,在参数前面 &
6,PHP的数据类型
·标量类型
字符串 整形 浮点型 布尔型
·复合类型
数组 对象
·特殊类型
null resource
·字符串
单引号执行速度快 双引号识别变量
常用的字符串函数(重点)
查找
strpos(haystack,needle);查找字符串首次出现的位置
······
strrchr();从字符串最后一次出现的位置开始,返回字符串
替换
trim()去掉字符串首尾空白字
str_replace(查找的字符串,替换的字符串,在那个字符串中查找)
substr_replace()把字符串的一部分替换成另一个字符串
substr(string,start,length)返回字符串的字串
比较
strcasecmp()一步区分大小写的方式比较字符串,返回0表示字符串相等
将字符串全部转化为小写 strtolower($str1)
将字符串全部转化为大写 strtoupper($str2);
拆分
explode()将字符串根据某个定界符分割成一个数组
implode()通过一个定界符是数组元素连接成一个字符串
正则表达式匹配
preg_match() 进行正则表达式匹配
preg_replace(正则表达式,替换的结果,查找的子付出啊)
$sina = preg_replace('/^(http:\/\/)?(.*)/i','www.sina.com','http://www.baidu.com');
案例(截取中
案例:
(1)匹配主机的域名
(2)替换主机名
(3)截取中文
preg_match('/php/i','PHP is server script language',$match);
//匹配主机的域名 . 匹配除了换行符之外的所有字符
preg_match('/^(http:\/\/)?(.*)/i','http://www.baidu.com',$domain);
$sina = preg_replace('/^(http:\/\/)?(.*)/i','www.sina.com','http://www.baidu.com');
案例:
2013年4月20日雅安发生了7.0级地震,党中央高度重视.....
preg_match('/php/i','PHP is server script language',$match);
//匹配主机的域名 . 匹配除了换行符之外的所有字符
preg_match('/^(http:\/\/)?(.*)/i','http://www.baidu.com',$domain);
$sina = preg_replace('/^(http:\/\/)?(.*)/i','www.sina.com','http://www.baidu.com');
数组类型:
1,数组的定义 array() 或 []
2,遍历数组(重点)
(1)使用for()遍历数组,适合下标从0开始,连续的整型索引数组
(2)foreach()遍历数组
3,数组指针
(1)current()获得当前数组指针指向的数组元素
(2)next() 将数组的指针指向下一个
(3)prev() 将数组的指针向前移动一个
(4)reset() 重置数组指针
(5)end() 将数组指针移动到最后
4,常用的数组函数
array_push() 入栈,讲一个或多个元素压入数组的末尾
array_pop() 出栈,将数组最后一个元素弹出
array_shift() 将数组开头的元素移出
array_unshift() 在数组开头插入一个元素
排序
sort() 删除数组原有的键名
rsort() 对数组逆向排序,删除数组原有的键名
asort() 对数组正向排序(按照元素值),不会删除数组原有的键名
ksort() 对数组按照键名排序