多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
### 字符串函数 - strlen($str) 获取字符串长度 - strstr($str, 'st', true) 搜索字符串中是否包含另一个字符。第三个参数若为true 则返回字符前面的所有字符,若为false ,则返回字符后面的所有字符。没有找到字符,则返回false. - strpos($str, 'st') 查询字符在字符串中出现的位置,若没有找到,则返回false - substr($str, 2, 4) 字符串截取,从索引为2的位置开始截取,截取长度为4的字符串 - str_replate($str, 3) 字符串重复3次 - str_replace('st', 'xx', $str) 字符串替换,将字符st 换成 xx - str_split($str, 3) 字符串分割成数组, 数组的每个元素 包含3个字符 - explode('s', $str) 字符串分割成数组,通过字符s 进行分割 - implode($arr) 将数组的value 合并成字符串 - strtolower($str) 字符串转小写 - strtoupper($str) 字符串转大写 - ucfrist($str) 首字母转大写 - ucwords($str) 首单词转大写 ### 数组函数 - count($arr) 获取数组的长度 - in_array($value, $arr) 判断数组中是否包含某个元素 - array_key_exists($key, $arr) 判断数组中是否包含某个键 - array_keys($arr) 返回数组键的新数组 - array_value($arr) 返回数组值的新数组 - array_chunk($str, 2, true) 将一维数组,按块大小分割成二维数组。第三个参数如果true则保留原来数组种的key ``` $people = array( 'a' => 'array', 'b' => 'bold', 'c' => 'class', 'd' => 'dist', 'e' => 'eggle', 'f' => 'function', 'g' => 'globe' ); array_chunk($people, 3, true) 结果: $array = [ [0] => [ 'a' => 'array', 'b' => 'bold', 'c' => 'class' ], [1] => [ 'd' => 'dist', 'e' => 'eggle', 'f' => 'function' ], [2] => [ 'g' => 'globe' ] ] ``` - array_column($arr, 'last_name') 返回数组中某个单一列的值 ``` $arr1 = [ 'a' => [ 'frist_name' => 'AAA', 'last_name' => 'aaa', ], 'b' => [ 'frist_name' => 'BBB', 'last_name' => 'bbb', ], 'c' => [ 'frist_name' => 'CCC', 'last_name' => 'ccc' ] ]; array_column($arr1, 'last_name') 结果: $arr = ['aaa', 'bbb', 'ccc'] ``` - array_combine($arr1, $arr2) 数组的合并,组成一个新数组。 一个数组是健名,另一个数组的值为健值 - array_filter($arr, 'func_name') 利用回调函数过滤数组中的每个键值对,返回过滤后的新数组 - array_map('func_name', $arr) 利用回调函数处理数组中的每个键值对,返回处理后的新数组 - array_merge($arr1, $arr2...) 将多个数组合并,并返回合并后的数组 - array_push($arr, 'name') 向数组的最后一位插入元素 - array_pop($arr) 删除数组的最后一位元素 - array_unshift($arr, 'name') 向数组的第一位元素 - array_shift($arr) 删除数组中的第一个元素 ### 日期/时间函数 date/time - date('Y-m-d H:i:s') 返回当前时间 - time() 返回当前时间戳 - mktime(hour,minute,second,month,day,year) 返回时间的 时间戳。不写参数,默认获取当前时间戳 - strtotime($str) 获取时间戳,参数为英文的时间字符串 ### math函数 - max(); 取最大值,参数可以是数组 - min(); 取最小值,参数可以是数组 - round(); 四舍五入 - rand(min, max); 取范围内的随机数 - mt_rand(min, max);取范围内的随机数 ### 文件系统函数 > 目录操作 - opendir('d:/www/') 打开目录,返回目录资源 - readdir($resource) 读取目录资源,根据资源内的指针下移,依次返回目录资源中的文件名或目录名(字符串) - closedir($resource) 关闭目录资源 - scandir('d:/www/') 扫描指定目录,返回数组 - mkdir('test', 0777, true) 参数2,设置目录权限。参数3,是否支持递归创建 - rmdir('d:/www') 删除目录。目录必须为空才能删除 - rename(old_name, new_name) 重命名目录 或文件 > 文件操作 - fopen($filename, $mode) 打开文件,返回文件资源 - fread($resource, $0) 读取文件内容 - fwrite($resource, $str) 向文件中写入内容 - fstat($resource) 获取文件资源信息 - fcolse($resource) 关闭文件资源 - file_exists($file_name) 文件是否存在 - file_get_contents($file_name) 获取文件内容 - file_put_contents($file_name, $str) 向文件中写入内容 - copy($old_name, $new_name) 复制 - unlink($file_name) 删除文件 - move_uploaded_file($temp_file, $path) 移动临时文件的位置,从而实现上传文件功能 ### http函数 - header(); 函数向客户段发送原始的header头。在header()函数之前不能有任何输出 - headers_list(); 函数返回已发送的header头的列表 - setcookie() 函数向客户端发送一个HTTP cookie - session_start() 开启session,并且会向客户端发送一个PHPSESSIONID的cookie ### json 相关函数 - json_decode($json, true) 将json字符串转换成对象,若要强制转换成数组,则需要添加第二个参数为true - json_encode($array) 将数组或对象转换成json字符串 ### mysqli 函数 ### PDO 函数 ### 超全局数组变量 - $_GET 存储以get方式提交的表单数据和URL传递的参数。 - $_POST 存储以post方式提交的表单数据 - $_REQUEST 存储以get / post方式提交的表单数据 - $_FILES 存储上传文件的文件信息。是一个二维数组 - $_COOKIE 存储客户端向服务端发送的cookie 数据 - $_SESSION 存储服务端获取的session数据(服务端是通过客户端的传递的PHPSESSIONID来获取相应的sessions数据) - $_ENV 存储服务器的环境变量数据 - $_SERVER存储系统的环境变量(保存关于报头、路径和脚本位置的信息) - $GLOBALS全局作用域中的全部变量(包括上面8中超全局数组,和自定义的全局变量) ### 魔术常量 - \_\_LINE__ 获取当前行号 - \_\_FILE__ 获取当前文件完整路径和文件名,若是被包含文件,则显示被包含文件路径 - \_\_DIR__ 获取当前文件的绝对目录,若是被包含文件,则显示被包含文件 - \_\_FUNCTION__ 获取当前函数名,若在方法外,则什么都不显示 - \_\_CLASS__ 获取当前类名 - \_\_TRAIT__ 获取当前Trait名 - \_\_METHOD__ 获取当前方法名 - \_\_NAMESPACE__ 获取当前命名空间 ### 魔术方法 - __construct() - __destruct() - __call() - __callStatic() - __get() - __set() - __isset() - __unset() - __sleep() - __wakeup() - __toString() - __clone() - __invoke()