3

原始数据类型(9种)

  • 基本数据类型: 整形(integer)、浮点型(float)、字符串(string)、布尔型(boolean)

  • 复合数据类型:数组(array)、对象(object)、callable(可调用)

  • 特殊数据类型:资源类型(resource) 和 NULL


变量相关处理函数

  • is_bool($var)        判断是否为布尔型

  • is_int($var)          判断是否为整型

  • is_float($var)      判断是否为浮点型

  • is_numeric($var)   判断是否为数值或数值字符串

  • is_string($var)     判断是否为字符串

  • is_array($var)       判断是否为数组

  • is_object($var)     判断是否为对象

  • is_resource($var)  判断是否为资源类型

  • is_null($var)         判断是否为NULL

  • gettype($var)         获取变量的类型


  • empty($var)   判断是否为空

  • isset($var)   判断是否存在

  • unset($var)   删除变量


  • intval($var)      强制转换为整型

  • floatval($var)  强制转换为浮点型

  • boolval($var)    强制转换为布尔型

  • strval($var)      强制转换为字符串

  • (int)$var         强转为整型

  • (bool)$var       强转为布尔值

  • (float)$var     强转为浮点型

  • (string)$var   强转为字符串

  • (array)$var     强转为数组

  • (object)$var   强转为对象

  • (unset)$var     强转为NULL


  • print_r($var)            打印数组

  • var_dump($var)          打印变量详细信息

  • var_export($var)      返回格式化的php代码(不执行),例如var_export($arr)


  • serialize($var)            变量序列化为字符串

  • unserialize($var)        反序列化


字符串相关处理函数

  • addslashes()   对字符串内的单双引号,反斜杠,NULL前面加\进行转义

  • htmlspecialchars()   可转义< > ' " & ,默认未开启转义单引号

  • strip_tags()   去除字符串中的html和php标签

  • md5()   将字符串进行md5加密

  • sha1()   返回SHA-1散列,默认生成40字符十六进制数

  • uniqid(前缀,如果是true则为23字符)   根据系统微妙数生成唯一id,但是并不是很保险,推荐用下面的

  • md5(uniqid(mt_rand(), true))


  • nl2br() 将字符串中的\n转换为<br>

  • trim()   移除两边空白符,可以使用第二个参数指定移除某个字符串

  • ltrim() 移除左边空白符,可以使用第二个参数指定移除某个字符串

  • rtrim() 移除右边空白符,可以使用第二个参数指定移除某个字符串


  • chr()   根据ASCII码返回对应字符

  • ord()   根据字符返回对应ASCII码


  • count_chars($str,1) 统计字符串中每个字符的出现的次数,返回数组

  • strlen() 返回字符串的长度

  • str_word_count() 统计字符串中的单词数量

  • substr_count('hello 666 hello', 'hello') 统计字符串中子串的数量


  • echo   是一个语法结构

  • print  是一个语法结构


  • str_split('abcdefg')   将字符串每个字符拆分为索引数组,第二个参数可以指定每个的长度array([0] => 'a', [1]=>'b' ...)

  • explode(',', $str)   将字符串根据指定字符拆分为数组

  • implode(',', $arr)   将数组用指定字符连接接为字符串,同join


  • strtolower()   字符串转为全小写

  • strtoupper()   字符串转为全大写

  • ucfirst()   首字母大写

  • lcfirst()   首字母小写

  • ucwords()   每个单词首字母大写


  • strchr('hello world hello world', 'world')   截取字符串第一次出现world到字符串结尾的部分,等同于strstr

  • stristr()   匹配时不区分大小写

  • strrchr()   匹配最后一次到结尾

  • substr($str, start, length)   字符串截取


  • strpos('hello world', 'world')   返回world在字符串中第一次出现的位置

  • strrpos()   匹配最后一次出现的位置

  • stripos()   匹配时不区分大小写


  • str_replace('word', 'world', 'hello word')   字符串替换

  • str_ireplace()   不区分大小写替换


  • str_repeat('我6', 3)   字符串重复

  • str_shuffle()   随机打乱字符串中的字符

  • strrev()   字符串反转


数组相关处理函数

  • array()   创建数组


  • array_keys()   返回所有键名

  • array_values()   返回所有的值

  • array_column($arr, 'name')   返回数组中某一列的值,第三个参数为指定某一列作为键名

  • array_rand($arr, 1)   随机返回数组中一个或多个键名


合并与拆分

  • array_merge()   将多个数组合并为一个数组,如果是索引数组则第二个追加到第一个前面,如果是关联数组则相同键名的后面覆盖前面

  • array_replace()   和array_merge区别:处理索引数组时也会合并而不是追加,处理关联数组基本一样

  • array_replace_recursive($a1,$a2)   递归用后面数组的值替换前面数组的值

  • array_chunk($arr, 2)   将数组分割为指定数目的子数组


统计

  • array_count_values()   统计数组中每个值出现的次数


比较

  • array_diff($arr1,$arr2,$arr3)   返回多个数组的差集,只比较键值

  • array_diff_key($arr1,$arr2,$arr3)   返回多个数组的差集,只比较键名

  • array_diff_assoc($arr1,$arr2,$arr3)   返回多个数组的差集,比较键名和键值

  • **`array_intersect()返回多个数组的交集,只比较键值

  • array_intersect_key($arr1,$arr2,$arr3)   返回多个数组的交集,只比较键名

  • array_intersect_assoc($arr1,$arr2,$arr3)   返回多个数组的交集,比较键名和键值


操作:

  • array_flip()   数组键值对调

  • array_reverse()   数组数据顺序颠倒

  • array_pop()   删除数组最后一个元素

  • array_shift()   删除数组的第一个元素

  • array_unshift($arr,"blue","yellow")   向数组开头新增一个或多个元素

  • array_push($arr,"blue","yellow")   数组末尾追加一个或多个值,返回数组长度

  • array_slice($arr, start, length)   数组截取

  • array_sum()   数组数据求和

  • array_unique()   数组去重

  • shuffle()   打乱数组

  • count()   数组长度

  • list()   将数组中的值依次赋值给变量

  • range('a','z')   生成指定范围的数组


是否存在:

  • array_key_exists("name",$arr)   检查某个键名是否存在

  • in_array('fsm', $arr)   检查某个值是否存在,第三个参数如果为true,则同时校验类型


搜索:

  • array_search("red",$arr)   根据值返回键名

  • key($arr)   获取数组当前的键名

  • current($arr)   获取数组当前的值


排序:

      按照值:

  • sort()   升序

  • rsort()   降序

  • asort()   索引数组升序

  • arsort()   索引数组降序

      按照键:

  • ksort()   按键升序

  • krsort()   按键降序


日期时间相关处理函数

      设置时区

  • php.ini date.timezone = PRC   

  • date_default_timezone_set("PRC");    // Asia/Shanghai

  • ini_set('date.timezone', 'Asia/Shanghai');   


  • time()    返回当前时间戳

  • date('Y-m-d H:i:s')    格式化本地的时间或者日期,(y-n-j不带前导零 w星期几 z一年中第几天 t月总天数 L是否闰年 a:am或pm)

  • getdate()    根据时间戳返回日期时间信息数组

  • strtotime()     将英文时间字符串解析为时间戳(2018-11-27 11:05:23, now, +1 week 2 days 4 hours 2 seconds, next Thursday, last Monday)

  • mktime(hour, minute, second, month, day, year)   取得一个日期的时间戳

  • microtime()   返回当前时间戳和微秒数0.50091600 1543288331

  • gettimeofday(true)   取得当前时间戳和和前三位或四位微秒1543289052.4254

  • checkdate(month, day, year)   验证日期合法性(月日年为必填)


目录和文件相关处理函数

  • getcwd()   返回当前文件所在目录的绝对路径

  • scandir()   数组形式返回目录中的所有子目录和子文件


  • basename()   返回路径中的文件名部分

  • dirname()   返回路径中的目录部分

  • pathinfo()   数组形式返回文件的信息


  • mkdir()   创建目录

  • copy(a, b)   复制文件

  • rename(oldname, newname)   重命名文件或文件夹

  • unlink()   删除文件

  • rmdir()   删除空目录

  • move_uploaded_file(file,newloc)   将上传的文件移动到新位置


  • file_exists()   检查文件或目录是否存在

  • file_get_contents()   将文件读入一个字符串

  • file_put_contents(filename, data)   将字符串写入一个文件


  • filesize()   返回文件的大小

  • filetype()   返回文件的类型


  • is_file()   判断是否为普通文件

  • is_link()   判断是否为链接文件


URL相关处理函数

  • urlencode()   url编码

  • urldecode()   url解码


  • base64_encode()   base64编码

  • base64_decode()   base64反编码


  • http_build_query($arr)   将数组编码成url参数字符串

  • parse_str("name=Bill&age=60", $arr)   将url参数字符串解析保存为数组


  • parse_url('http://php.net/manual/en/function.parse-url.php?name=12234456&time=baga')   将url地址信息解析为数组,数组中的query可以作为parse_str的参数


数学相关处理函数

  • abs()   绝对值

  • ceil()   向上取整

  • floor()   向下取整

  • fmod()   返回除法浮点数余数

  • max()   最大值

  • min()   最小值

  • pi()   圆周率

  • pow(x,y)   x的y次方

  • sqrt()   平方根

  • round()   四舍五入

  • rand(low, high)   返回随机整数

  • is_nan()   判断是否为 非数值


魔术常量(预定义常量)

  • __FILE__   返回文件的完整路径和文件名(绝对路径),如果用在被包含的文件中,则返回被包含的文件名

  • __DIR__   返回文件所在目录,等价于dirname(__FILE__)

  • __NAMESPACE__   返回当前命名空间

  • __CLASS__   返回当前类名

  • __METHOD__   返回当前方法名

  • __FUNCTION__   返回当前函数名


魔术方法

  • __construct()   实例化类时自动调用。

  • __destruct()   类对象使用结束时自动调用。

  • __set()   在给未定义的属性赋值的时候调用。

  • __get()   调用未定义的属性时候调用。

  • __isset()   使用isset()或empty()函数时候会调用。

  • __unset()   使用unset()时候会调用。

  • __clone()   当使用clone复制一个对象时候调用。


超全局变量(预定义变量)

  • $_SERVER   服务器和执行环境信息

  • $_GET   get方式传递的数据

  • $_POST   post方式传递的数据

  • $_FILES   http文件上传信息

  • $_COOKIE   http cookies

  • $_SESSION   session变量

  • $_REQUEST   默认包含get post cookies

  • $GLOBALS   全局变量


其他函数

  • function_exists()   检查函数是否存在

  • class_exists()   检查类是否存在

  • method_exists(obj, method_name)   检查方法是否存在


  • header()   发送HTTP报头(Location:)


  • define()   定义一个常量

  • defined()   检查一个常量是否存在


  • die() exit()   输出消息并退出脚本

  • sleep()   程序延迟执行若干秒

  • usleep()   程序延迟执行若干微秒



msfang
44 声望0 粉丝

一份耕耘一份收获,天道酬勤


« 上一篇
github使用简介
下一篇 »
面试常见问题