Posted: January 6, 2011 at 11:26 am | Tags: debug, mac, php, vld, xhprof
最近因为经常离线调试,所以开始重新在本机搭环境,还好 Mac 原本就自带了 PHP 。
[515][MacBookPro: /tmp]$ which php
/usr/bin/php
[516][MacBookPro: /tmp]$ php --version
PHP 5.3.3 (cli) (built: Aug 22 2010 19:41:55)
Copyright (c) 1997-2010 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2010 Zend Technologies
既然有 php 那就先试试直接用 pecl 来安装。
sudo pecl install -f vld
sudo pecl install -f xhprof
不过安装 xhprof 时提示说要在扩展的目录里,查了一下 PECL Bug #16438 里面说是 pecl 里 xhprof 包的问题。那么问题也就很好解决了,直接把源码包下载下来安装即可。
wget http://pecl.php.net/get/xhprof-0.9.2.tgz
tar zxf xhprof-0.9.2.tgz
cd xhprof-0.9.2/extension
phpize
./configure
make
make install
然后修改 /etc/php.ini 如果没有这个文件就 sudo cp /etc/php.ini.default /etc/php.ini。
在 php.ini 中增加 extension=vld.so 和 extension=xhprof.so 和针对这两个扩展的详细配置,这个可以在网上搜到。
然后在 ~/.bash_profile 里增加 alias phpo=’php -dvld.active=1′
以后再打 phpo xxxx.php 就可以看到 vld 的效果了。
Posted: June 2, 2010 at 6:45 pm | Tags: mac, php
在 Mac 平台上也试了不少的 IDE 和 Editor ,各有特色吧。
之前听说过有人在 XCode 上做 PHP 开发,所以今天我也试了一下,和 Textmate 一样,采用 Esc 键做为自动补全的快捷键,但是有下拉列表,并且在输入时会有提示。
在 Create Project 时选择最左侧的 Other 里面的 Empty Project

然后选位置保存即可,如果有代码想添加进来直接在菜单的 Project 里有 Add to Project


代码这样就导入进来了。
但是当我们编辑时会发现一些 PHP 语法的关键字颜色不对,那么可以去修改下面的文件。
cd /Developer/Library/PrivateFrameworks/XcodeEdit.framework/Versions/A/Resources/
vim PHP.xclangspec
Posted: November 6, 2009 at 6:07 pm | Tags: linux, php, shell
#!/bin/bash
TODAY=/tmp/$(date +%Y%m%d)
CONTENT=$TODAY/update_content_sina.tmp
if [ ! -d $TODAY ]; then
mkdir $TODAY
fi
if [ -f $CONTENT ]; then
rm $CONTENT
fi
svn up ~/job/code/php/sinahouse/ >> $TODAY/svn_update_list.tmp
LIST=`cat $TODAY/svn_update_list.tmp | grep ‘.php’ | awk ‘{print $2}’`
for L in $LIST; do
svn diff -r PREV $L >> $CONTENT
done
/usr/bin/vim $CONTENT
Posted: September 17, 2009 at 10:49 am | Tags: linux, php, python, windows
最近在国内没办法再用 spotify 听歌了,迫于无奈只好转向 google music 。
因为 firefox 尴尬的内存占用,并且考虑把歌同步到 iPhone 上来听,开始着手找下载 google music 的小工具,发现骨头做的 gmbox 不错,可惜现在是只支持 windows 和 linux ,只好用 gmusic.py 这个脚本。
运行 gmusic.py 首先要安装 python3 环境,去 python 官方网站载下 python3.1 然后 configure –enable-shared && make && sudo make install && ln -s /usr/local/bin/python3 /usr/bin/python3 既可
用 gmusic.py 下载速度在我的 istat 里显示大概是 800K 左右,非常不错。
Posted: July 8, 2009 at 5:15 pm | Tags: cache, class, debug, html, php
之前大家都是在程序里写上简单的 require_once 和 require 然后直接跑一遍 ab 来看时间,这回 Konstantin Rozinon 在 apache debug 模式下看了一下 lstat64 的操作数量,对比结果说 require_once 和 require 在时间上相关非常非常小,但是在读文件时是用绝对路径还是相对路径对性能还是有一些影响,因为绝对路径会少一些 stat。
引用原文:
- When using absolute_path there are fewer stat() system calls.
- When using relative_path there are more stat() system calls because it has to start stat()ing from the current directory back up to / and then to the include/ directory.
个人习惯上还是推荐用 require_once,并且这个不是显示的写在各个文件中,而是在中心的 loader 里统一负责根据 php5 的 __call 这个特性来去 require_once 相应的文件,一些性能上的损耗可以通过其它方式来弥补。比如 APC、XCache、Eacc 这些,opcode cache 现在成了 PHP 的必需品了。
原文:点击进入
btw: zend studio 7 beta 真慢……
Posted: July 7, 2009 at 10:45 am | Tags: php
昨天回家看到小区楼下两个小孩在草坪上挖了个洞玩泥巴,我一看情况危机,马上跑过去将两个小孩推开,几脚踩平了。两个小孩哇哇大哭,不巧他们家长也在附近,过来要跟我理论。我不屑一顾地说:没文化真可怕,你仔细看看,这栋楼后面是一栋15层的高层,已经给我们这栋楼造成了很大的水平推力,你家小孩在前面挖坑玩,目测已经达到了100mm的深度,这使得我们这栋楼承受的压力差急剧增大,如果不是我及时进行了回填,后果不堪设想。家长听得目瞪口呆,向我连连致谢,表示回去一定好好教育小孩,严禁做这种危险游戏。
转自:华山论坛