PHP

修改 PHP 的 memory_limit 内存限定
摘要: 最近需要修改 CentOS 里的 PHP 内存限定,发现不管怎么修改 php.ini 里的memory_limit 都无法修改成功,phpinfo() 里显示还是原来的数值。今天早上随手vim一下 php-fpm.conf 文件,发现 php_admin_value[memory_limit] = 64M,修改为128M,reload 一下 php-fpm,修改成功!阅读全文

posted @ 2012-04-24 08:42 飘风之鹰 阅读(58) | 评论 (0) 编辑

simpletest的一点经验:0个测试、1个Case的情况
摘要: 今天发现:假如测试文件为 TestSomthing.php那么,运行这个测试的时候,如果加QueryString,SimpleTest不会做测试,如 http://example.org/TestSomthing.php?sh=xxx,会出现一个成功的绿条,1个case,0个测试。如果有一个文件为index.php,通过 require/include 把 TestSomthing.php 包含进来,会有同样的问题。所以,如果运行 TestSomthing.php 来做单元测试,它的地址一定是如下形式的:http://example.org/someplace/TestSomthing.php阅读全文

posted @ 2012-04-11 20:46 飘风之鹰 阅读(7) | 评论 (0) 编辑

PDOStatement的HY093错误原因及解决办法
摘要: PHP中使用PDO时,如果PDOStatement的实例返回HY093错误,通常都是参数绑定错误。参数绑定错误通常有以下几种:1. 参数个数不符,请检查PDOStatement::execute($array)中$array的元素个数与prepare方法中:param_name或?的个数是否相同,这种情况没有任何错误描述,只有错误代码HY093;2. 参数名不匹配,请检查 PDOStatement::execute($array)中$array的键名与prepare方法中:param_name完全一致;3. prepare方法使用了不正确的参数名,例如':param_name'阅读全文

posted @ 2012-03-21 20:28 飘风之鹰 阅读(98) | 评论 (0) 编辑

在Windows下安装pear
摘要: Windows 下安装pear,修改go-pear.bat如下:@ECHO OFFset PHP_BIN=php.exe%PHP_BIN% -d phar.require_hash=0 PEAR\go-pear.pharpause阅读全文

posted @ 2011-12-07 15:48 飘风之鹰 阅读(19) | 评论 (0) 编辑

XMLHttpRequest(Ajax)不能设置自定义的Referer
摘要: 解决方法: 使用服务器作为代理.在PHP中, 使用我最喜欢的最强大的CURL,嘿嘿下面是在万网查询域名的实例代码<?php$dn = $_GET['dn']; // 域名, 不包括www$ex = $_GET['ex']; // 顶级域名, 如 .com, .cn, 包括最前面的.// 查询域名是否已经注册 $url='http://pandavip.www.net.cn/check/check_ac1.cgi';$ch=curl_init($url);curl_setopt($ch,CURLOPT_POST,true); // POSTc阅读全文

posted @ 2011-11-24 15:56 飘风之鹰 阅读(258) | 评论 (1) 编辑

Linux中,fgetcsv取得的数组元素为空字符串的解决方法
摘要: 使用CSV导入数据的时候,我们通常用的是Windows系统,使用GBK在Windows的Excel中编辑.但服务器上,很多使用Linux服务器,源程序使用UTF-8,这样很容易产生字符编码的问题.如果仅仅将CSV文件转码为UTF-8,这样在Windows服务器上没有问题, 而在RedHat5.5上,用fgetcsv取得的数组中,如果某列的内容是中文,则该列对应的数组元素为空字符串,而英文则正常.这时,需要设置区域: setlocale(LC_ALL, 'zh_CN.UTF-8');代码如下 //上传的CSV文件,通常是用Excel编辑的GBK编码,//而源代码是UTF-8,需要阅读全文

posted @ 2011-11-24 11:02 飘风之鹰 阅读(144) | 评论 (0) 编辑

在 WampServer 上手工安装 PHP 的多个版本
摘要: WampServer是一个集成了PHP/Mysql/Apache及其它应用(如PhpMyAdmin/Xdebug[也许没有])的软件,它最令人喜爱的特征,不是令Php/Mysql/Apache的安装配置简单化,而是让我们只需要点点鼠标,就可以随意切换已经安装的PHP/Mysql/Apache的不同版本。对于PHP不同版本的需求,PHP程序员都最清楚不过了。WampServer的Version菜单(Apache、PHP、Mysql各自有一个Version菜单)上,有一个 Get More... 连接,点击它就可以到官网上下载你需要的版本,安装是自动化的,非常简单。但是,到我写本文为止,官网的P.阅读全文

posted @ 2011-11-15 17:11 飘风之鹰 阅读(1204) | 评论 (2) 编辑

PHP容易被忽略而出错陷阱-数字与字符串比较
摘要: 0 与任意非数字(或者说,不可转化为数字的字符)前导的字符串比较(操作符为==), 均返回 true.原因是, 数字与字符串比较时, 先尝试将字符串转换为数字, 再比较, 一个不能转换为数字的字符串, 转换结果为0, 故, 与0比较总返回 true.更加详细的比较规则, 多种类型的比较规则, 在 PHP手册/语言参考/运算符/比较运算符 可以找到.阅读全文

posted @ 2011-11-08 21:01 飘风之鹰 阅读(176) | 评论 (0) 编辑

PHP中的 strtr 函数
摘要: PHP的 strtr 函数, 性能要比 str_replace 函数高, 可以代替 str_replace 来使用.strtr 有两种形式:string strtr ( string $str , string $from , string $to )string strtr ( string $str , array $replace_pairs )当使用第一种的时候, 参数 $from, $to 的字符串长度一定要相同, 否则多余的(不管是$from多还是$to多) 字符被忽略.比如 $str = 'a-=b' ;当$from='-=' ,$to='阅读全文

posted @ 2011-10-20 14:26 飘风之鹰 阅读(246) | 评论 (0) 编辑

array_intersect 比 array_diff 快
摘要: 在PHP中,使用 array_intersect 求两个数组的交集比使用 array_diff 求同样两个数组的并集要快。如果要求数组 $a 与数组 $b 的差集的个数,应该使用 count($a) - count(array_intersect($a, $b)),而不要用 count(array_diff($a, $b));前面要比后者快,在大数组中更为明显。阅读全文

posted @ 2011-06-30 11:30 飘风之鹰 阅读(88) | 评论 (0) 编辑

小试QueryPath,一个实现了不少jQuery接口的PHP类库
摘要: 很想写一个PHP的jQuery,但是自己精力与能力有限,于是Google一下,找到 QueryPath。其实前几天已经找到一个,叫 simple_html_dom (SourceForge下载),不到1000行代码,很简单。有兴趣就下载看看。基本使用方法:require'src/QueryPath/QueryPath.php';//解释HTML为DOMqp('<html>...</html>');//或者加载文件qp('http://www.google.com.hk/index.html');如果 qp的第一个参数是 u阅读全文

posted @ 2011-06-21 11:36 飘风之鹰 阅读(225) | 评论 (0) 编辑

A HOWTO on Optimizing PHP(如何优化PHP的一篇文章)
摘要: 本文有图,若无图,可下载DOCX文件转自 http://phplens.com/lens/php-book/optimizing-debugging-php.php作者:http://phplens.com/phpeverywhere/PHP is a very fast programming language, but there is more to optimizing PHP than just speed of code execution. In this chapter, we explain why optimizing PHP involves many factors .阅读全文

posted @ 2011-06-21 08:36 飘风之鹰 阅读(136) | 评论 (0) 编辑

优化 PHP 代码的 40 条建议
摘要: 1.如果一个方法可静态化,就对它做静态声明。速率可提升至 4 倍。 2.echo 比 print 快。 3.使用 echo 的多重参数(译注:指用逗号而不是句点)代替字符串连接。 4.在执行 for 循环之前确定最大循环数,不要每循环一次都计算最大值。 5.注销那些不用的变量尤其是大数组,以便释放内存。 6.尽量避免使用 __get,__set,__autoload。 7.require_once() 代价昂贵。 8.在包含文件时使用完整路径,解析操作系统路径所需的时间会更少。 9.如果你想知道脚本开始执行(译注:即服务器端收到客户端请求)的时刻,使用 $_SERVER[‘REQUEST_TI阅读全文

posted @ 2011-06-21 08:20 飘风之鹰 阅读(144) | 评论 (0) 编辑

写了一个PHP的String类
摘要: PHP String 类,暂时只有encode,decode方法:使用方法:$s = '中国';$os = new String( $s );echo $os->decode('gbk') , ' ';echo $os->decode('gbk')->encode('md5'), ' ';代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-阅读全文

posted @ 2010-04-20 15:46 飘风之鹰 阅读(99) | 评论 (0) 编辑

PHP XML To Array,将XML转换为数组
摘要: 代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->//Xml转数组,包括根键,忽略空元素和属性,尚有重大错误functionxml_to_array($xml){$reg="/<(\\w+)[^>]*?>([\\x00-\\xFF]*?)<\\/\\1>/";if(preg_match_all($reg,$xml,$matches)){$count=count($matches[0]);$a阅读全文

posted @ 2009-12-31 17:17 飘风之鹰 阅读(1728) | 评论 (0) 编辑