PHP基础笔记
echo/print中单引号和双引号:
"" :变量会被替换为所配置的值
'' :变量不会被替换为所配置的值
$_POST数组,自动全局变量 存储提交的表单数据
$GLOBALS,引用全局作用域中可用的全部变量,是一个包含了全部变量的全局组合数组,变量的名字就是数组的键。
$_SERVER数组,自动全局变量 存储关于服务器和HTTP引擎当前所处理的请求的信息 $_SERVER[‘PHP_SELF’]中的PHP_SELF元素保存当前请求URL的路径名。 $_SERVER[‘REQUEST_METHOD’]这个元素的值是web浏览器请求当前页面的HTTP方法。
Filter_input(INPUT_POST,’age’,FILTER_VALIDATE_INT):
当age字段为整数,返回该整数;
当age字段没有值,返回NULL;
当age字段不为空,为其他数据,返回FALSE;
‘===’表示恒等,需要两个值相等并且数据类型相同
trim()函数,去掉首位空格
function A(){
......
Return array(数组1,数组2);
}
list(数组3,数组4)=A();
//把A()中返回的数组1、数组2传到list中的数组3、数组4
in_array() 函数搜索数组中是否存在指定的值。 -> in_array(search,array,type)
注释:如果 search 参数是字符串且 type 参数被设置为 TRUE,则搜索区分大小写。
$arr = array("1","2","3","4","5"); 创建的是string类型数组
$arr = array(1,2,3,4,5); 创建的是integer类型数组 用echo gettype(); 判断
避免跨站脚本攻击:使用 htmlentities() 编码获取到的值:htmlentities()函数把字符转换为 HTML 实体
$_SERVER['PHP_SELF'] 当前执行脚本的文件名
PHP连接数据库
PDO: 静默模式(default)/警告模式/异常模式
处理PDO静默模式 需要用 “===”判断,避免”影响0行”的成功查询
$db->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_WARNING);
$db->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);
PHP 构造方法 __construct() :允许在实例化一个类之前先执行构造方法。构造方法是类中的一个特殊方法。当使用 new 操作符创建一个类的实例时,构造方法将会自动调用,其名称必须是 __construct() 。在一个类中只能声明一个构造方法,而是只有在每次创建对象的时候都会去调用一次构造方法,不能主动的调用这个方法,所以通常用它执行一些有用的初始化任务。该方法无返回值。
比较浮点数: abs($a - $b) < 0.000001
比较数字和字符串:按照字典排序,出现晚的>出现早的 ;当字符串只包含数字或以数字开头,PHP引擎会将字符串转换成数字。
strcmp() 按照字典比较字符串大小,区分大小写
strcasecmp() 按照字典比较字符串大小,且不区分大小写
数字加字符串=数字 123+"true"=123 期中"true"被转换成数字 0 。
在双引号字符串或here文档中内插数组元素的值,可以不在键两侧放上引号。若键中有空格或者符号,则要放于花括号。例:"abc $array[aaa] def"、"abc {$array['aa a]}" .
unset($arr['key']) 删除这一组键值对 implode(',' , $arr) 将arr数组中的所有值取出用 "," 连接成一个字符串 ,若不想使用分隔符,则第一个参数为空字符串 '' 。 explode( ',' , $string) 用 "," 将string字符串拆分为多个值存于数组。 sort() 根据数组的值排序,键重置为数字并递增。 asort() 根据数组的值排序,保留对应的键 ksort() 根据键排序,保留键值对的关系。sort() asort() ksort() -- 递增,从小到大排序 rsort() arsort() krsort() -- 递减,从大到小排序。
asort(array,sortingtype); http://www.manongjc.com/article/379.html
多维数组排序 array_multisort(array1,sorting order,sorting type,array2,array3...)
多维数组自定义排序 usort($arr,"function") 自定义排序,"function"包含$a,$b,返回值为 "-1" :$a往前$b往后; "0" : $a$b不变; "1" :$a往后$b往前.
http://www.w3school.com.cn/php/func_array_multisort.asp
require ' php file name '; 相当于把 php file name 文件里面的代码复制到 require 命令。require 和 include 只在报错上有区别。require一个文件存在错误的话,那么程序就会中断执行了,并显示致命错误 。include一个文件存在错误的话,那么程序不会中端,而是继续执行,并显示一个警告错误。 include有返回值,而require没有。
新建一array然后动态的增加array的元素用array_push:
$ary=array("1","2","3");
array_push($ary, "4","5" ) ;
$ary的结果等同于使用:$ary=array("1","2","3","4","5");
合并两个或多个数组应该使用array_merge
$ary1=array( "1","2","3" );
$ary2=array( "a","b","c" );
$ary=array_merge($ary1,$ary2);
结果$ary=("1","2","3","a","b","c");
unset() 删除数组中的元素
usort($arr,"function") 自定义排序,"function"包含$a,$b,返回值为 "-1" :$a往前$b往后; "0" : $a$b不变; "1" :$a往后$b往前.