本文主要讲file_get_contents、fsockopen、stream_context_create、curl 在php中的使用方法以及他们适合使用场景的讨论。
继续阅读…
标签归档:php
为PHP设置服务器(Apache/Nginx)环境变量
设置环境变量常见的地方为区分开发环境/生产环境,或者定义一些数据库的帐号密码
PHP:将图片编码成base64
Base64是网络上最常见的用于传输8Bit字节代码的编码方式之一,事实上,可以base64编码的文件不仅仅是图片,其他可以通过Http传输的数据文件也可以base64编码,恩,差不多,就这样.
想了解更多情况的童鞋可以看看这篇文章《小tip: base64:URL背景图片与web页面性能优化》。
今天主要分享一段用PHP实现 将本地图片编码成base64 的代码:
继续阅读…
Javascript:使用Web代理实现XMLHttpRequest跨域访问
XMLHttpRequest对象(在IE中也称作XMLHTTP对象)是当今最令人兴奋的AJAX Web应用程序的核心。但实际上使用这个对象书写的客户端web应用程序在通过web浏览器进行跨域访问时面临的安全限制性因素而变的非常棘手。这篇文章以简单易于理解的语言描述了这个问题,并提供了一个可行的解决方案:来自你的web服务器请求像雅虎的web服务API网络请求的web代理。
PHP中功能强大却少使用的函数
call_user_func_array — 让参数以数组的形式调用一个函数
call_user_func — 调用一个存在的函数
create_function — 建立一个函数
func_get_arg — 获取函数中某个参数的值
func_get_args — 获取函数的所有参数并组成数组
func_num_args — 获取一个函数的参数个数
function_exists — 判定一个函数是否存在
get_defined_functions — 获取已有的函数信息
register_shutdown_function — 注册一个页面载入完成后运行的函数
register_tick_function — 注册一个按要求调用的函数
unregister_tick_function — 取消一个按要求调用的函数
继续阅读…
收藏几个PHP助手函数
1, 获取客户端IP地址:
/** * 获取客户端的IP地址 * * @since 1.0.0 * @return string $ip */ function getClientIP() { if(getenv('HTTP_CLIENT_IP') && strcasecmp( getenv('HTTP_CLIENT_IP'),'unknown')){ $ip = getenv('HTTP_CLIENT_IP'); }else if(getenv('HTTP_X_FORWARDED_FOR') && strcasecmp( getenv('HTTP_X_FORWARDED_FOR'),'unknown')){ $ip = getenv('HTTP_X_FORWARDED_FOR'); }else if(getenv('REMOTE_ADDR') && strcasecmp( getenv('REMOTE_ADDR'),'unknown')){ $ip = getenv('REMOTE_ADDR'); }else if(isset($_SERVER['REMOTE_ADDR']) && $_SERVER['REMOTE_ADDR'] && strcasecmp($_SERVER['REMOTE_ADDR'],'unknown')){ $ip = $_SERVER['REMOTE_ADDR']; }else{ $ip = 'unknown'; } return($ip); }
2,判断传入字符串是否为邮箱
/** * 判断传入字符串是否为邮箱 * * @since 1.0.0 * @param String $email * @return boolean */ function isEmail($email){ return (ereg("^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+(.[a-zA-Z0-9_-])+",$email)); }
3,产生给定长度的随机字符串
/** * 产生给定长度的随机字符串 * * @since 1.0.0 * @param Number $length * @return String $hash */ function randomStr($length = 32) { $hash = ''; $chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyz'; $max = strlen ( $chars ) - 1; mt_srand ( ( double ) microtime () * 1000000 ); for($i = 0; $i < $length; $i ++) { $hash .= $chars [mt_rand ( 0, $max )]; } return $hash; }
4,截取字符串函数,支持截取指定长度的汉字字符
/** * 截取字符串函数,支持截取指定长度的汉字字符 * * @since 1.0.0 * @param $str * @param $from * @param $len * @return string $str */ function utf8CutStr($str, $from, $len) { $curlen = strlen($str); if($curlen>$len){ return preg_replace('#^(?:[\x00-\x7F]|[\xC0-\xFF][\x80-\xBF]+){0,'.$from.'}((?:[\x00-\x7F]|[\xC0-\xFF][\x80-\xBF]+){0,'.$len.'}).*#s','$1',$str).'...'; }else{ return $str; } }
后续整理,持续增加...
『演示』Just a CometDemo App Powered by CrossYou
话说,早在去年的8月份,自己连续花费了7天的时间,制作了自己有史以来的第一个php+txt版的留言本,附上Demo链接(以证明真相).
Phpcompressor-1.0.5 for linux base on Yuicompressor
在winXP下的时候,我用的是Taobaocompressor 来压缩js||css文件,后来转到ubuntu,网上找个好点的linux版的压缩工具也难,于是就着php皮毛的了解,自己制作了一个compressor,分享出来,共用学习研究。