PHP快速排序

PHP快速排序

思路通过设置一个初始中间值,来将需要排序的数组分成3部分,小于中间值的左边,中间值,大于中间值的右边,继续递归用相同的方式来排序左边和右边,最后合并数组代码<?php $a = array(2, 13, 42, 34, 56, 23, 67, 365, 87665, 54, 68, 3); function quicksort($a) { if (count($a) <= 1) { return $a; } $mid = $a[0]; $left = array(); $right= array(); for...

PHP 2020-09-30 PM 2℃ 0条
PHP的str_split分割字符串成数组

PHP的str_split分割字符串成数组

str_split(string,length)参数 描述string 必需。规定要分割的字符串。length 可选。规定每个数组元素的长度。默认是 1。<?php print_r(str_split("Shanghai")); ?> Array ( [0] => S [1] => h [2] => a [3] => n [4] => g [5] => h [6] => a [7] => i )

PHP 2020-09-30 PM 4℃ 0条
PHP折半查找

PHP折半查找

定义折半查找技术,也就是二分查找。它的前提是线性表中的记录必须是关键码有序(通常从大到小有序),线性表必须采用顺序存储。折半查找的基本思想取中间记录作为比较对象,若给定值与中间记录的关键字,则在中间记录的关键字相等,则查找成功;若给定值小于中间记录的作伴去继续查找;若给定值大于中间记录的关键字,则在中间记录的右半区继续查找。不断重复上述过程,直到查找成功,或所有查找区域无记录,查找失败为止。实践:<?php function bin_search($arr, $val) { $low=0; $high=count($arr); $index=0; ...

PHP 2020-09-30 PM 2℃ 0条
php时间转为为几天前,几分钟前等数据

php时间转为为几天前,几分钟前等数据

<?php /** * 时间转为为几天前,几分钟前等数据 * @param $the_time * @return string */ function time_tran($the_time) { $now_time = date("Y-m-d H:i:s", time()); //echo $now_time; $now_time = strtotime($now_time); $show_time = strtotime($the_time); $dur = $now_time - $show_time;...

PHP 2020-09-28 PM 13℃ 0条
php删除某个目录(目录和目录下面的子目录文件全部删除)

php删除某个目录(目录和目录下面的子目录文件全部删除)

<?php /** * 删除某个目录(目录和目录下面的子目录文件全部删除) */ function delDir($directory){//自定义函数递归的函数整个目录 if(file_exists($directory)){//判断目录是否存在,如果不存在rmdir()函数会出错 if($dir_handle=@opendir($directory)){//打开目录返回目录资源,并判断是否成功 while($filename=readdir($dir_handle)){//遍历目录,读出目录中的文件或文件夹 ...

PHP 2020-09-28 PM 12℃ 0条
php中文截取字符串

php中文截取字符串

/* * 中文截取字符串 * 第三个参数是false,不加... */ function cutUtf8($string, $length, $etc = '...') { $result = ''; $string = html_entity_decode(trim(strip_tags($string)), ENT_QUOTES, 'UTF-8'); $strlen = strlen($string); for ($i = 0; (($i < $strlen) && ($length > 0)); $i++) { ...

PHP 2020-09-28 PM 10℃ 0条
php 字符串加密、解密函数

php 字符串加密、解密函数

/** * 字符串加密、解密函数 * @param string $txt 字符串 * @param string $operation ENCODE为加密,DECODE为解密,可选参数,默认为ENCODE, * @param string $key 密钥:数字、字母、下划线 * @param string $expiry 过期时间 * @return string */ function sysAuth($string, $operation = 'ENCODE', $k...

PHP 2020-09-28 PM 12℃ 0条
php生成一个唯一的id 32位

php生成一个唯一的id 32位

/** * @param string $prefix * @return string * 生成一个唯一的id 32位 */ function create_uuid($prefix = ""){ //可以指定分隔符 $str = md5(uniqid(mt_rand(), true)); $uuid = substr($str,0,8) . $prefix; $uuid .= substr($str,8,4) . $prefix; $uuid .= substr($str,12,4) . $prefix; $...

PHP 2020-09-28 PM 12℃ 0条
php 中的换行 PHP_EOL

php 中的换行 PHP_EOL

换行符unix系列用 nwindows系列用 rnmac用 rPHP中可以用PHP_EOL来替代,以提高代码的源代码级可移植性如:<?phpecho PHP_EOL; //windows平台相当于 echo "\r\n"; //unix\linux平台相当于 echo "\n"; //mac平台相当于 echo "\r";类似常用的还有DIRECTORY_SEPARATOR可以用函数get_defined_constants()来获取所有PHP常量<?phpprint_r(get_defined_c...

PHP 2020-09-28 PM 13℃ 0条
PHP解决BOM头办法

PHP解决BOM头办法

类似WINDOWS自带的记事本等软件,在保存一个以UTF-8编码的文件时,会在文件开始的地方插入三个不可见的字符(0xEF 0xBB 0xBF,即BOM)。它是一串隐藏的字符,用于让记事本等编辑器识别这个文件是否以UTF-8编码。对于一般的文件,这样并不会产生什么麻烦。但对于 PHP来说,BOM是个大麻烦。  PHP并不会忽略BOM,所以在读取、包含或者引用这些文件时,会把BOM作为该文件开头正文的一部分。根据嵌入式语言的特点,这串字符将被直接执行(显示)出来。由此造成即使页面的 top padding 设置为0,也无法让整个网页紧贴浏览器顶部,因为在html一开头有这3个字符呢!===...

PHP 2020-09-28 PM 11℃ 0条
PHP中去除字符串中的换行的方法

PHP中去除字符串中的换行的方法

在PHP中,有时候我们需要对字符串的换行进行过滤,比如天涯PHP博客中文章页面的description信息,我是直接截取的文章内容,并过滤掉html符号,最终还要过滤掉其中的换行。下面整理一下常见的去除换行的方法及PHP代码。其实天涯[phpha.com]想给大家推荐的是一个系统常量[PHP_EOL]。// 第1种写法:<?php str_replace("n", '', $str); ?> // 第2种写法:<?php str_replace("rn", '', $str); ?> // 第3种写法:<?php pr...

PHP 2020-09-28 PM 15℃ 0条