文章来源:jquery教程 - http://www.jq-school.com/Show.aspx?id=328
前面已经分享了
今天是第4篇,主要有截取字符串、计算一年多少个星期,返回一个星期的开始时间和结束时间(可选返回时间戳或日期)、实现递归创建多级目录、递归删除目录、检测QQ状态等功能,也就是第16到20这5个实用代码片段,希望可以帮到jquery学堂群里面的成员和广大对PHP开发的网友们提高开发效率,以下是第4篇文章。
16、PHP实现截取字符串的通用方法
/** * 截取字符串 * params $string 要截取的字符串 * params $length: 保留长度(字符数) * params $dot: 多余部分显示 **/ function _cutstr($string, $length, $dot = ' ...') { if(strlen($string) <= $length) { return $string; } $string = str_replace(array('&', '"', '<', '>'), array('&', '"', '<', '>'), $string); $strcut = ''; $n = $tn = $noc = 0; while($n < strlen($string)) { $t = ord($string[$n]); if($t == 9 || $t == 10 || (32 <= $t && $t <= 126)) { $tn = 1; $n++; $noc++; } elseif(194 <= $t && $t <= 223) { $tn = 2; $n += 2; $noc += 2; } elseif(224 <= $t && $t < 239) { $tn = 3; $n += 3; $noc += 2; } elseif(240 <= $t && $t <= 247) { $tn = 4; $n += 4; $noc += 2; } elseif(248 <= $t && $t <= 251) { $tn = 5; $n += 5; $noc += 2; } elseif($t == 252 || $t == 253) { $tn = 6; $n += 6; $noc += 2; } else { $n++; } if($noc >= $length) { break; } } if($noc > $length) { $n -= $tn; } $strcut = substr($string, 0, $n); $strcut = str_replace(array('&', '"', '<', '>'), array('&', '"', '<', '>'), $strcut); return $strcut.$dot; }
17、PHP实现计算一年多少个星期,返回一个星期的开始时间和结束时间(可选返回时间戳或日期)
function getWeekStartAndEnd ($year,$week=1) { header("Content-type:text/html;charset=utf-8"); date_default_timezone_set("Asia/Shanghai"); $year = (int)$year; $week = (int)$week; //按给定的年份计算本年周总数 $date = new DateTime; $date->setISODate($year, 53); $weeks = max($date->format("W"),52); //如果给定的周数大于周总数或小于等于0 if($week>$weeks || $week<=0){ return false; } //如果周数小于10 if($week<10){ $week = '0'.$week; } //当周起止时间戳 $timestamp['start'] = strtotime($year.'W'.$week); $timestamp['end'] = strtotime('+1 week -1 day',$timestamp['start']); //当周起止日期 $timeymd['start'] = date("Y-m-d",$timestamp['start']); $timeymd['end'] = date("Y-m-d",$timestamp['end']); //返回起始时间戳 return $timestamp; //返回日期形式 //return $timeymd; }
18、PHP实现递归创建多级目录的通用方法
/** * +-------------------------------------------------------------------- * Description 递归创建目录 +-------------------------------------------------------------------- * @param string $dir 需要创新的目录 +-------------------------------------------------------------------- * @return 若目录存在,或创建成功则返回为TRUE +-------------------------------------------------------------------- * @author gongwen +-------------------------------------------------------------------- */ function mkdirs($dir, $mode = 0777){ if (is_dir($dir) || mkdir($dir, $mode)) return TRUE; if (!mkdirs(dirname($dir), $mode)) return FALSE; return mkdir($dir, $mode); }
19、PHP实现递归删除目录的通用方法
/** * +-------------------------------------------------------------------- * Description 递归删除目录 +-------------------------------------------------------------------- * @param string $dir 需要删除的目录 +-------------------------------------------------------------------- * @return 若目录不存在或册除成功则返回为TRUE +-------------------------------------------------------------------- * @author gongwen +-------------------------------------------------------------------- */ function rmdirs($dir){ if (!is_dir($dir) || rmdir($dir)) return TRUE; if($dir_handle=opendir($dir)){ while($filename=readdir($dir_handle)){ if($filename!='.' && $filename!='..'){ $subFile=$dir.'/'.$filename; } is_dir($subFile)?rmdirs($subFile):unlink($subFile); } closedir($dir_handle); return rmdir($dir); } }
20、PHP实现检测QQ状态的通用方法
function qq_status(){ if (empty($qq))$qq = 429590191; $url = 'http://wpa.qq.com/pa?p=2:'.$qq.':52'; $Headers = get_headers($url, 1); if ($Headers['Location']=='http://pub.idqqimg.com/qconn/wpa/button/button_121.gif'){ $Status = 1; //QQ在线 }elseif ($Headers['Location']=='http://pub.idqqimg.com/qconn/wpa/button/button_120.gif'){ $Status = 2; //QQ离线 }else { $Status = 0; //未知 } Return $Status; } //测试数据 $qqwp = qq_status('429590191'); //测试QQ是否在线,返回1=在线,返回2=离线,返回0=错误 if ($qqwp==1){ echo 'QQ在线'; }elseif ($qqwp==2){ echo 'QQ离线'; }else { echo '出错了'; }
相关推荐
通过学习这些代码片段,您可以了解 PHP 的基本语法和常用函数,并学会如何处理字符串、操作数组、读写文件以及连接数据库。这些知识可以帮助您更加高效地编写 PHP 程序,并解决实际的编程问题。无论您是初学者还是有...
PHP常用代码大全,极品 PHP常用代码大全,极品
9个常用的PHP代码片段编程小技巧共7页.pdf.zip
PHP常用代码大全.txtPHP常用代码大全.txtPHP常用代码大全.txtPHP常用代码大全.txtPHP常用代码大全.txt
PHP常用代码大全 (新手入门必备
下面这里收集了 40+ PHP 代码片段,可以帮助你开发 PHP 项目。 这些 PHP 片段对于 PHP 初学者也非常有帮助,非常容易学习,让我们开始学习吧~ 1. 发送 SMS 在开发 Web 或者移动应用的时候,经常会遇到需要发送 ...
常用的PHP代码大全常用的PHP代码大全常用的PHP代码大全常用的PHP代码大全
PHP 常用代码大全,差不多吧,同学找的资料,听说很有用
PHP常用程序代码,很好的源码,我是玩JSP的,把同学的都分享了
10个非常实用的PHP代码片段
php 后台 代码
php常用代码 连接MYSQL数据库代码 分页源码
常用的php开发代码!技巧大全都在这里!
将多个重复出现在字符串中的特定字符,去重并保留一个出现。如1_2____3__4_______5_6__7__,使用脚本去重后则是1_2_3_4_5_6_7。仅仅会保留一个代表这个字符,不会将其全部替换干净。
zencart 常用代码,常用php调用,对zencart 修改模板非常有用
php的常用代码汇总: 连接数据库、分页、调用、数据更新等。适合新手。
一些常用功能的PHP代码
我们老师就用这个给我门将的课。 很好用,很多常用的代码讲的很详细。
php zendframework 包括连接数据库 分页 以及其他的一些常用代码
php常用代码!