10个实用的PHP代码片段


Posted in PHP onSeptember 02, 2011

关键词高亮

function highlight($sString, $aWords) { 
if (!is_array ($aWords) || empty ($aWords) || !is_string ($sString)) { 
return false; 
} 
$sWords = implode ('|', $aWords); 
return preg_replace ('@\b('.$sWords.')\b@si', '<strong style="background-color:yellow">$1</strong>', $sString); 
}

获取你的Feedburner的用户
function get_average_readers($feed_id,$interval = 7){ 
$today = date('Y-m-d', strtotime("now")); 
$ago = date('Y-m-d', strtotime("-".$interval." days")); 
$feed_url="https://feedburner.google.com/api/awareness/1.0/GetFeedData?uri=".$feed_id."&dates=".$ago.",".$today; 
$ch = curl_init(); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
curl_setopt($ch, CURLOPT_URL, $feed_url); 
$data = curl_exec($ch); 
curl_close($ch); 
$xml = new SimpleXMLElement($data); 
$fb = $xml->feed->entry['circulation']; 
$nb = 0; 
foreach($xml->feed->children() as $circ){ 
$nb += $circ['circulation']; 
} 
return round($nb/$interval); 
}

自动生成密码
function generatePassword($length=9, $strength=0) { 
$vowels = 'aeuy'; 
$consonants = 'bdghjmnpqrstvz'; 
if ($strength >= 1) { 
$consonants .= 'BDGHJLMNPQRSTVWXZ'; 
} 
if ($strength >= 2) { 
$vowels .= "AEUY"; 
} 
if ($strength >= 4) { 
$consonants .= '23456789'; 
} 
if ($strength >= 8 ) { 
$vowels .= '@#$%'; 
} 
$password = ''; 
$alt = time() % 2; 
for ($i = 0; $i < $length; $i++) { 
if ($alt == 1) { 
$password .= $consonants[(rand() % strlen($consonants))]; 
$alt = 0; 
} else { 
$password .= $vowels[(rand() % strlen($vowels))]; 
$alt = 1; 
} 
} 
return $password; 
}

压缩多个CSS文件
header('Content-type: text/css'); 
ob_start("compress"); 
function compress($buffer) { 
/* remove comments */ 
$buffer = preg_replace('!/\*[^*]*\*+([^/][^*]*\*+)*/!', '', $buffer); 
/* remove tabs, spaces, newlines, etc. */ 
$buffer = str_replace(array("\r\n", "\r", "\n", "\t", ' ', ' ', ' '), '', $buffer); 
return $buffer; 
} 
/* your css files */ 
include('master.css'); 
include('typography.css'); 
include('grid.css'); 
include('print.css'); 
include('handheld.css'); 
ob_end_flush();

获取短网址
function getTinyUrl($url) { 
return file_get_contents("http://tinyurl.com/api-create.php?url=".$url); 
}

根据生日计算年龄
function age($date){ 
$year_diff = ''; 
$time = strtotime($date); 
if(FALSE === $time){ 
return ''; 
} 
$date = date('Y-m-d', $time); 
list($year,$month,$day) = explode("-",$date); 
$year_diff = date("Y") ? $year; 
$month_diff = date("m") ? $month; 
$day_diff = date("d") ? $day; 
if ($day_diff < 0 || $month_diff < 0) $year_diff?; 
return $year_diff; 
}

计算执行时间
//Create a variable for start time 
$time_start = microtime(true); 
// Place your PHP/HTML/JavaScript/CSS/Etc. Here 
//Create a variable for end time 
$time_end = microtime(true); 
//Subtract the two times to get seconds 
$time = $time_end - $time_start; 
echo 'Script took '.$time.' seconds to execute';

PHP的维护模式
function maintenance($mode = FALSE){ 
if($mode){ 
if(basename($_SERVER['SCRIPT_FILENAME']) != 'maintenance.php'){ 
header("Location: http://example.com/maintenance.php"); 
exit; 
} 
}else{ 
if(basename($_SERVER['SCRIPT_FILENAME']) == 'maintenance.php'){ 
header("Location: http://example.com/"); 
exit; 
} 
} 
}

阻止CSS样式被缓存
<link href="/stylesheet.css?<?php echo time(); ?>" rel="stylesheet" type="text/css" /&glt;

为数字增加 st\nd\rd 等
function make_ranked($rank) { 
$last = substr( $rank, -1 ); 
$seclast = substr( $rank, -2, -1 ); 
if( $last > 3 || $last == 0 ) $ext = 'th'; 
else if( $last == 3 ) $ext = 'rd'; 
else if( $last == 2 ) $ext = 'nd'; 
else $ext = 'st'; 
if( $last == 1 && $seclast == 1) $ext = 'th'; 
if( $last == 2 && $seclast == 1) $ext = 'th'; 
if( $last == 3 && $seclast == 1) $ext = 'th'; 
return $rank.$ext; 
}
PHP 相关文章推荐
用php获取远程图片并把它保存到本地的代码
Apr 07 PHP
写出高质量的PHP程序
Feb 04 PHP
php删除字符串末尾子字符,删除开始字符,删除两端字符(实现代码)
Jun 27 PHP
php将session放入memcached的设置方法
Feb 14 PHP
PHP入门经历和学习过程分享
Apr 11 PHP
ThinkPHP3.1.3版本新特性概述
Jun 19 PHP
php递归json类实例
Dec 02 PHP
php中关于socket的系列函数总结
May 18 PHP
浅谈php中include文件变量作用域
Jun 18 PHP
PHP 进度条函数的简单实例
Sep 19 PHP
Laravel框架搜索分页功能示例
Feb 01 PHP
PHP图像处理 imagestring添加图片水印与文字水印操作示例
Feb 06 PHP
PHP文件操作实现代码分享
Sep 01 #PHP
深入探讨PHP中的内存管理问题
Aug 31 #PHP
php中使用Imagick实现图像直方图的实现代码
Aug 30 #PHP
PHP正确配置mysql(apache环境)
Aug 28 #PHP
PHP MySQL应用中使用XOR运算加密算法分享
Aug 28 #PHP
PHP 时间日期操作实战
Aug 26 #PHP
PHP url 加密解密函数代码
Aug 26 #PHP
You might like
PHP编程之高级技巧——利用Mysql函数
2006/10/09 PHP
PHP合并数组的2种方法小结
2016/11/24 PHP
PHP设计模式之观察者模式定义与用法示例
2018/08/04 PHP
thinkphp5引入公共部分header、footer的方法详解
2018/09/14 PHP
php设计模式之观察者模式定义与用法经典示例
2019/09/19 PHP
计算世界完全对称日的js代码,粗糙版
2011/11/04 Javascript
Jquery插件编写简明教程
2014/03/25 Javascript
jquery实现倒计时代码分享
2014/06/13 Javascript
jQuery创建DOM元素实例解析
2015/01/19 Javascript
js动态生成form 并用ajax方式提交的实现方法
2016/09/09 Javascript
vue项目中做编辑功能传递数据时遇到问题的解决方法
2016/12/19 Javascript
详解PHP中pathinfo()函数导致的安全问题
2017/01/05 Javascript
微信小程序 登录实例详解
2017/01/16 Javascript
ES6新特性六:promise对象实例详解
2017/04/21 Javascript
jQuery实现键盘回车搜索功能
2017/07/25 jQuery
vue刷新和tab切换实例
2018/02/11 Javascript
微信小程序身份证验证方法实现详解
2019/06/28 Javascript
el-input 标签中密码的显示和隐藏功能的实例代码
2019/07/19 Javascript
JavaScript之Blob对象类型的具体使用方法
2019/11/29 Javascript
[55:56]NB vs Infamous 2019国际邀请赛淘汰赛 败者组 BO3 第二场 8.22
2019/09/05 DOTA
用python记录运行pid,并在需要时kill掉它们的实例
2017/01/16 Python
Python的装饰器使用详解
2017/06/26 Python
从0开始的Python学习016异常
2019/04/08 Python
python GUI库图形界面开发之PyQt5切换按钮控件QPushButton详细使用方法与实例
2020/02/28 Python
基于CentOS搭建Python Django环境过程解析
2020/08/24 Python
Python内置函数及功能简介汇总
2020/10/13 Python
python上下文管理器异常问题解决方法
2021/02/07 Python
使用HTML5的Notification API制作web通知的教程
2015/05/08 HTML / CSS
国外最大的眼镜网站:Coastal
2017/08/09 全球购物
eDreams加拿大:廉价航班、酒店和度假
2019/03/29 全球购物
广播电视新闻学专业应届生求职信
2013/10/08 职场文书
应届生求职推荐信
2013/10/28 职场文书
高级护理专业毕业生推荐信
2013/12/25 职场文书
党员组织生活会发言材料
2014/10/17 职场文书
三好学生竞选稿
2015/11/21 职场文书
MySQL中order by的使用详情
2021/11/17 MySQL