PHP常用函数总结

<?php


//返回数组中元素的个数,可以理解为返回数组的长度
count();

//获取变量中的字符串值,可以理解为把变量转换成字符串类型
strval();

//查询数组里是否存在着指定的健名,返回true和false
array_key_exists(键名,数组);


//特殊字符转换,可有效的防止xss注入
htmlspecialchars(addslashes(变量));

//清除字符串两旁的空格
trim();


// 向文件追加写入内容
// 使用 FILE_APPEND 标记,可以在文件末尾追加内容
// LOCK_EX 标记可以防止多人同时写入
file_put_contents(文件路径, 要写入的内容, FILE_APPEND | LOCK_EX);
//查询数组里是否存在该键值,存在返回该键值的键名,如果有多个匹配,那么返回最先匹配到的键值的键名 //false代表不限类型,键值数据相同即可 //true代表完全匹配,要求数据类型和键值完全相同,默认为false array_search("键值", 数组, false); //把变量转换为整数类型,如果有小数,则删除小数,不执行四舍五入 //失败或者变量为空时返回0,否则返回1; intval(); //往数组尾部插入一个或多个元素 //返回新数组 array_push($a, "要插入的元素", "要插入的元素"); //把变量类型转换为字符串类型 //返回该字符串 strval(); // 查询数组里是否存在该键值,存在返回true,反之返回false //false代表不限类型,键值数据相同即可 //true代表完全匹配,要求数据类型和键值完全相同,默认为false in_array('键值', 数组, false); //新建mysql服务器连接,可理解为新建数据库连接 $mysql = mysqli_connect("ip", "用户名", "密码", "数据库", "端口(默认为3306)"); //修改数据库连接的字符集 mysqli_set_charset($mysql, "utf8"); //对数据库进行sql操作 mysqli_query($mysql, sql语句); //返回结果集的中行的数量,可理解为返回结果集的长度 mysqli_num_rows(); //从结果集中获取一条数据,并作为数组返回 mysqli_fetch_row(); //以切割符为断点切割字符串,组成数组并返回, //数组的数目也就是长度 //大于0,返回相对数值的数组,如1,返回的数组只有一个元素, 0也返回只有一个元素的数组 //小于0,从数组尾部开始,去除 (-x) 的绝对值个元素,返回 explode("分割符", 变量, 返回数组元素的数目); //把数组里的元素打乱随机排序 shuffle(); //截取保留结果集的第 n 条数据,其他删除,并返回 //n为0时截取第一条,为1时截取第二条,以此类推,n为-1时截取最后一条 mysqli_data_seek($xx, n); //将数组转为json格式 json_encode(); //将json格式转为数组对象 json_decode($xxx);

//字符串切割
//$a为字符串,3表示从下标为3的地方开始切割,返回一个数组
str_split($a,3);
//检测变量是否为数字,返回 true  false
is_numeric(变量);
//将json格式转为数组 json_decode($xxx, true); //清除指定的变量 unset(); //字符串替换指定值 //搜索$pic字符串里的\符号,全部替换成/ str_replace("\\", "/", $pic); //设置时区 PRC为中国时区 date_default_timezone_set("PRC"); //获取当前时间 date('Y-m-d H:i:s', time()); //获取当前0点的时间戳 strtotime(date("Y-m-d"), time());

//下个月现在的时间戳
strtotime('+1 month')
//获取当前时间戳
time();


//获取当前时间的微秒
microtime();


//把日期时间转换成时间戳
strtotime();
//例:strtotime("2019-01-01 00:00:00");


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


//检查当前文件是否存在
file_exists();

//延迟下面的程序执行,1为延迟一秒后再执行后面的程序
sleep(1);

//网络请求超时设置,默认为30秒
set_time_limit(30);


//创建目录,并且设置最高权限
mkdir(目录名称, 0700, true);
//创建一个0到100的随机数
rand(0, 100);

//根据需求创建一个数组如:
range(0, 100);
//结果 Array ( [0] => 0 [1] => 1 [2] => 2 [3] => 3 ... [100] => 100 );

//首字母转换为大写
ucwords();

//返回当前内存消耗量
memory_get_usage();

//获取一个数组的全部键名
array_keys(数组);

//获取一个数组的全部健值
array_values(数组);
//php引入php文件 require()、include()、require_once()、include_once() //require和include相同点:都是引入并执行文件 //require和include不同点:       //require一般只会放在PHP脚本最前面进行使用,因为它会先行执行文件,需等待require引入的文件执行完成方可继续执行下去,如果require执行文件时出现错误,则会返回一个致命错误,并带掉程序。       //include一般是放在脚本中间进行使用,因为它不会先行执行,只会在用到的时候再执行加载,如果include引入的文件执行错误,不会带掉程序,只会返回一个警告,然后程序继续执行下去 //而require_once()和include_once()则跟require和include一样,唯一多出的一点属性就是:检测文件是否已经加载过,如果已经加载过了,就不再进行加载了 //检测ip是否合法 long2ip()和ip2long() //ip2long():把ip转换成为整形,如:2130706433,如果ip不是合法ip则返回空 //long2ip():把整形转换为ip,如果整形为空则返回0.0.0.0 long2ip(ip2long("127.0.0.1")); //数组转为字符串 implode(",", 数组); //查看php设置 phpinfo(); public(公共的、默认) protected(受保护的)被声明为protected的成员,只允许该类的子类进行访问。 private(私有的 ) 被定义为private的成员,对于类内部所有成员都可见,没有访问限制。对类外部不允许访问。

interface

static 把方法设置成静态方法

interface 定义接口 如 interface a{ public function b();//抽象方法,里面不添加任何数据及逻辑}
abstract 可把当前类定义为抽象类,抽象类时不能实例化的,等着被继承
implements 实现接口,和extends不同的是,如果当前类里面实现了这个接口a,但是类里面没有方法b,那么就会报错

extends 继承类,使用过框架的都知道,他的作用就是继承某个类,从而让他更容易的调用里面的方法

paremt::方法名 子类调用父类方法

//检查扩展是否已加载 ,返回布尔值 extension_loaded() //加载图片的基本信息,返回值为数组 getimagesize() //输出结果: //array( //     [0]   => 图片宽度的像素值 //    [1]   => 图片高度的像素值 //    [2]   => 图片的类型,返回的是数字,其中1 = GIF,2 = JPG,3 = PNG,4 = SWF,5 = PSD,6 = BMP,7 = TIFF(intel byte order),8 = TIFF(motorola byte order),9 = JPC,10 = JP2,11 = JPX,12 = JB2,13 = SWC,14 = IFF,15 = WBMP,16 = XBM //    [3]   => 图片的宽高 //    [bits] => 图片的每种颜色的位数,二进制格式 //    [mime] => 图片的 MIME 信息,此信息可以用来在 HTTP Content - type 头信息中发送正确的信息,如: header("Content-type: image/jpeg");  //) //获取图片后缀 注:当获取的图片后缀为jpg的时候,将会输出jpeg,当false为true时则输出.png image_type_to_extension(getimagesize('./01.png')[2], false); //创建画板,默认背景颜色为黑色 imagecreatetruecolor(宽,高); //给画板设置背景颜色 imagecolorallocate(imagecreatetruecolor(宽,高), 255, 255, 255); //压缩 imagecopyresampled(画板,图片,画板X坐标点,画板y坐标点,图片x坐标点,图片y坐标点,要压缩到多宽,要压缩到多高,图片的宽,图片的高); //销毁图像资源 imagedestroy(); //合并图片,把图片2放到图片1里面 imagecopymerge(图片1,图片2,图片1x坐标点,图片2y坐标点,图片1x坐标点,图片2y坐标点,图片2的宽,图片2的高,透明度); //设置字体的颜色 imagecolorallocatealpha(图片或者画板,rgb颜色1,rgb颜色2,rgb颜色3,透明度); //在图片或者画板里设置水印 imagettftext(画板或者图片, 字体大小, 字体倾斜度, 字体的x坐标, 字体的y坐标, 字体的颜色imagecolorallocatealpha(), 字体文件如:'STHUPO.TTF', 要输出的文字);

posted @ 2019-05-24 10:02  钧一  阅读(825)  评论(0编辑  收藏  举报