易截截图软件、单文件、免安装、纯绿色、仅160KB

如何使用PHP开发高效的WEB系统


PHP是一个很优秀的工具,它可以简单,也可以复杂。不一样的项目,应该用不一样的PHP。
小项目 – 简单而直接的PHP
一般对于一个功能页面在20以下的网站,我们可以用一个很简单的框架结构来写。在这个规模上,我建议是使用比较直接的面向过程编码方法,原因很简 单,没有必要把class文件弄的N 多,结果controller里边就一个new就完了。当然,需求频繁变化的项目除外。
在这个级别上,php优点表现的很明显:快速开发,一目了然。缺点同时也被隐藏得很好。
中型项目 – 结构优美的OO化的PHP
对于一个中型项目,我建议使用一个良好设计的框架来做,这个框架可以是基于MVC模型,封装了众多底层操作的,当然,一定要有一个好的最好是透明的 cache机制,这样,我们为了适应变化而加入的OO机制可以运行得更快更好。
在这个级别上。php的缺点开始凸现,像对OO支持的不完整(这个PHP5有很大改进),只能单线程模式。另外一些外围工具开始出现缺乏支持,像 PHP没有好的重构工具,没有好的集成到IDE中的单元测试工具。优点当然还是原来的快速开发,广泛的可用的开源资源。
大型项目 – 扩展、优化后的PHP
这里的大型项目,简单的指分布式项目,就是说,你的程序需要被部署在N台服务器上了。在这个层级上,PHP比起j2ee的确缺乏很多支持。我曾和 shadow在735上详细讨论过PHP要在大型系统上应用需要解决的一些问题,当然这些问题不光是PHP这个语言的问题,也包括了周边开发的问题:
1、 PHP的页面代码共享,PHP的源代码被载入内存一次以后,就在其中保留 – 这个用APC和Zend的优化器可以搞定。
2、PHP页面之间的数据对象共享,a.php和b.php之间可以共享一个数据对象,比如数组,这个现在可以用序列化来作,但是会有文件io,这 块可以用共享内存或者memcached来处理。
3、PHP的数据库连接池,因为在多前端的情况下,PHP控制不住对数据库的连接,所以需要在数据库前边去作一个连接池,类似于sqlrelay的 东西。另外数据缓存也是很重要的,大压力开发有一个tip,就是能不动数据库就不要动数据库。
4、PHP的前端cache系统。一个透明的可控制的cache机制,确保网站的页面以最少次数查询数据库。这个有很多实现,但是没有找到特别好 的。
5、一个PHP应用,成功的解决调这几个问题以后,应付稍微大一点的压力是没有什么问题的。
在这个级别上,重要


相关文档:

PHP5在Linux下安装


Linux下安装PHP5的主要步骤:
1.下载php5;地址:http://cn.php.net/downloads.php
2.解压软件包后进入该目录
(转者注:
可能会需要先解压php-5.*.tar.bz2 ,先执行bzip2 -d php-5.*tar.bz2

tar -xvf php-5.*.tar.gz
cd php-5.*
3.php安装mysql的模块的一些准备工作
ln -s /usr/local/mysql/lib/mysql /usr/l ......

PHP缓存技术:memcache函数详解之二

memcache::debug
bool memcache_debug ( bool $on_off )
说明:
控制调试功能,前提是php在编译的时候使用了-enable-debug选项,否则这个函数不会有作用。
参数:
$on_off:true表示开启调试,false表示关闭调试
返回值:
如果php在编译的时候使用了-enable-debug选项,返回true,否则返回false
Memcache::decremen ......

使用PHP来操作Cassandra

使用Thrift来让PHP操作Cassandra无疑是一个首选方案,但是配置和操作比较麻烦。
我们可以使用一个php的模块phpcassa来操作Cassandra。
我们先插入一些数据:
下载phpcassa:http://github.com/downloads/hoan/phpcassa/phpcassa-0.1.zip
解压缩,放到项目的include目录下。
写一个php文件,内容如下:
 
  ......

php 字符串安全过滤 全攻略

<?php
if (!get_magic_quotes_gpc()) {
add_slashes($_GET);
add_slashes($_POST);
add_slashes($_COOKIE);
}

function add_slashes($string) {
if (is_array($string)) {
foreach ($string as $key => $value) {
$string ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号