PHP
文章平均质量分 61
zhaozhi406
这个作者很懒,什么都没留下…
展开
-
解决php读中文目录、文件名乱码
造成乱码的原因主要是因为系统字符编码与页面编码不统一,解决办法很简单,php的函数iconv($inencoding,$outencoding,$str)。比如说中文乱码,就这样办:$str = iconv(GB2312,UTF-8,$str),不过这行代码一定要在最后输出之前使用,因为像filemtime(),filesize()这样的函数好像不认转换编码后的目录名或者文件原创 2009-03-27 16:49:00 · 5040 阅读 · 0 评论 -
一个php实现的生成排列的算法
<?phpfunction perm($s, $n, $index){ if($n == 0) { return ''; } else { $nIndex = count($index); //可用的字符串下标 $res = array(); foreach($ind原创 2013-01-22 23:06:38 · 978 阅读 · 0 评论 -
yii框架页面渲染
1、一般页面渲染yii的页面渲染通过在controller的action中调用$this->render($viewname...)进行,流程如下图:在render方法中,yii会先对你的view文件进行渲染,然后如果你使用了某些layouts,则会将view渲染的输出再传入对layouts的渲染方法中,上述这两步在虚线框中表示了,简单的页面渲染就是这样的。当然这里面有些技巧需要注意,原创 2013-05-25 23:54:36 · 13424 阅读 · 3 评论 -
在Yii框架中使用PHPExcel
PHPExcel是一个比较好用的php读取excel文件的类库,今天遇到了在yii中如何加载PHPExcel类文件的问题,因为Yii的autoload机制是安装类名去找文件,即文件名就是相应的类名,而PHPExcel的类文件命名方式则是:dir_dir_classname.php,即文件名把文件的目录名都记录了,这种命名方式yii肯定识别不了。怎么办?其实PHPExcel也有自己的autolo原创 2013-07-14 19:44:00 · 4455 阅读 · 1 评论 -
yii框架autoload机制
Yii框架宣称自己的类加载方式很高效,是真正的“用时加载”,那究竟特别在哪里?今天研究了一下源码,发现其实是在代码级加了一层“路径缓存”。我们知道,要实现自己的autoload方法,需要采用spl_autoload_register()函数注册一个autoload方法,Yii注册的这个方法是YiiBase::autoload(),稍后再讲解这个方法的逻辑。另外,Yii一般都用Yii::impo原创 2013-07-14 19:33:45 · 5657 阅读 · 0 评论 -
codeIgniter加载第三方库
放到libraries下比较方便,也可放到third_party下,参考http://www.slideshare.net/samsonasik/codeigniter-using-third-party-components-zend-framework-components原创 2013-07-23 16:33:18 · 1968 阅读 · 0 评论 -
phpexcel读取excel时间
excel中的时间是从1900-01-01开始的,而unix时间戳是从1970-01-01开始的,详情见:http://jingyan.baidu.com/article/a501d80cc7e9f3ec620f5e7a.html直接用phpexcel读取是得不到正确的unix时间戳的,网上很多方法,但是大多显得笨拙,例如:http://www.cnblogs.com/eczhou/archi原创 2013-08-07 20:26:25 · 4096 阅读 · 1 评论 -
php会自动将$_GET数组的key中的点转换成下划线
假如一个url为: /index.php?abc.xyz=pppphp获取到的$_GET数据会是'abc_xyz'=>ppp,而不是'abc.xyz'=>ppp,原因是“点”不属于合法的php命名字符,点是字符串连接符,而$abc.xyz将造成解释器错误。详细可参见:http://stackoverflow.com/questions/68651/get-php-to-stop-r翻译 2013-09-05 14:07:53 · 2760 阅读 · 0 评论 -
PHP多进程控制demo
declare(ticks=1);function sigHandler($signal){ echo "a child exited\n";}pcntl_signal(SIGCHLD, sigHandler, false);echo "this is " . posix_getpid() . PHP_EOL;for($i=0; $i<3; $i++){ $pid =原创 2013-11-06 20:33:18 · 900 阅读 · 0 评论