Developer Tutorials blog 今天发表了一篇文章
http://www.developertutorials.com/blog/web/5-ways-to-be-a-better-php-developer-36/
提出了做一名优秀程序员的五点建议。
这里,我总结出五点提高生产率,优化代码。例如:核心函数,框架,设计模式,文档格式。如下:
1阅读手册(PS:这个不用多说,人手一份,手册是最核心的,任何书都不能替代手册)
2阅读代码(阅读别人写的代码,网上有很多优秀的代码供参考,例如:SourceForge.net )
3学习新框架( phpframeworks.com 框架是很好,但是在学习框架前一定要打好基础。)
4研究(不要只看表面和应用,应该多研究原理,例如xml-rpc,rest,oop等等)
5学习OOP(面向对象编程)
New on the Developer Tutorials blog today is this post offering up a few ideas (five of them) on how they think you can become a better programmer.
In this post, I''ll outline five ways to be a better developer, improve your productivity, write less code and achieve more with your web applications.There''s always more to learn when it comes to PHP development. New core functions, new frameworks, new design patterns, new code documentation styles. Here are some of the best ways you can become a better PHP developer.
His five suggestions are:
- Read the manual
- Browse thr
ZF开发的PHP应用与传统PHP应用集成的方法
大家知道,ZF需要将所有HTTP请求全部交由index.php(bootstrap)来处理,所以我们需要配置服务器的URL重写规则,例如Apache的httpd.conf:
RewriteEngine On
RewriteCond %{REQUEST_URI} !^.*(.css|.js|.html|.zf|.gif|.pdf|.rar|.ppt|.chm|.png|.jpg|.jpeg)$
RewriteRule ^(/.*)$ /index.php
我们把对除了特定扩展名外的所有文件的请求都转向到index.php。
但是这样就出现了一个问题:如果我想将一个已有的PHP程序放到网站中,怎么办? 对程序的请求也都转向到index.php,显然程序无法正常工作了。
通过修改URL重写规则,我们可以解决这个问题。
例如安装discuz!论坛,我们把它装在/bbs目录下,那么我们可以这样改写rewrite规则:
RewriteEngine On
RewriteCond %{REQUEST_URI} !^.*(.css|.js|.html|.zf|.gif|.pdf|.rar|.ppt|.chm|.png|.jpg|.jpeg)$|.*(bbs).*
RewriteRule ^(/.*)$ /index.php
注意,我们在最后加上了一个|.*(bbs).*,也就是说如果请求中有出现bbs字样就不转向到index.php,这样我们就可以访问
bbs目录下的所有文件而不会转向到/index.php了。
使用这个办法,可以方便地将ZF开发的程序和传统的PHP程序集成起来。
如果你曾为你的UNIX系统下载过widget,那么你肯定遇到过TAR压缩文件。在UNIX系统中磁带归档文件格式常用于打包多个文件,以便于分发kvm。
这种格式的流行不仅由于在所有UNIX系统中都存在该格式的创建工具,还因为在实际应用中,它便于保存归档文件的目录结构、许可信息、用户和组信息等写字楼。
PHP中有大量的内建函数和可连接的扩展库,可用于几乎所有文件格式。特别是笔记本维修它可以通过PEAR的Archive_Tar类读取和创建TAR文档。在本文中,我们将向你说明这个类的行为,并演示开发人员是如何利用它动态地创建,编辑和显示TAR文档。
在这里我将假设你有一个工作数据库和安装了PHP,并且正确的安装了PEAR的Archive_Tar类。
注:你可以直接从网上安装PEAR 的Archive_Tar类包,或者从网上下载安装。
创建TAR文档
让我们从一个简单的例子开始:动态创建包含几个文件的TAR文档。使用下面的脚本:
列表 A
<php
include (''Archive/Tar.php'');// import class
$obj = new Archive_Tar(''dummy.tar''); // name of archive
$files = array(''mystuff/ad.gif'',
''mystuff/alcon.doc'',
''mystuff/alcon.xls''); // files to store in archive
if ($obj->create($files)) {
echo ''Created successfully!'';
} else {
echo ''Error in file creation'';
}
>
这个脚本相当简单,但是还是值得具体看一下:
首先,创建Archive_Tar类的一个实例,初始化创建文档的路径和文件名。在本例中,文件名是dummy.tar,存于当前目录北京电磁炉。
其次,列出归档的所有文件,包括它们的磁盘地址,存于一个PHP数组中。脚本(更准确的说是运行脚本的用户)必须拥有访问这些磁盘地址的许可权,否则文档创建过程就会失败。
最后,creat()方法将所有的文件压缩到单个TAR文档。这个方法接受输入的文件名数组,返回一个布尔值表明文档是否成功创建。记住脚本必须拥有将文件写入命名磁盘地址的许可权,否则,creat()方法就无法使用,文档创建就会失败华泰圣达菲。
应用上面例子中的脚本,修改$files数组的内容以反映你的本地系统配置,在命令行或者浏览器中试着执行它,如果一切正常的话,脚本将会查找并读取这些文件到一个命名为dummy.tar的TAR文档中。
查看TAR文档内容
如何查看已经存在的TAR文件的内部信息呢?Archive_Tar类有一个listContent()方法,该方法可以查看一个TAR包中的每个组件的详细信息。列表B显示了如何使用它:
列表 B
<php
include (''Archive/Tar.php'');// import class
$obj = new Archive_Tar(''dummy.tar''); // name of archive
$files = $obj->listContent();// array of file information
foreach ($files as $f) {
foreach ($f as $k => $v) {
echo "$k: $vn";
}
echo "n";
}
>
listContent()方法的输出是一个结构化数组,温度控制器每个数组元素代表文档中的一个文件。典型的是,每个元素有相应文件的名字信息,它的许可模式,所有者和组用户的ID,状态,大小和上一次修改的时间。通过一个循环可以很容易的提取这些信息,然后再对格式稍作修改使它根据表达性,像上面的例子中提到的。下面是一个输入示例:
校验和:3872
文件名:mystuff/alcon.doc
模式:33206
用户ID:433
组ID:106
大小:41472
时间:1140358031
向已经存在的TAR文档中添加文件
由于我们大家的健忘性国内旅游,有时可能忘记某个文件,Archive_Tar 类通过add()方法提供了
向已经存在的文档中添加新文件的能力
安装篇(Windows平台)
* 安装PHP环境。Zend Framework(下面简称ZF)需要PHP 5.1.4+才能正常运行。如果你已经安装了PHP环境,跳过这一步。在Win下,我推荐使用WAMP做为开发环境。只要一路next,WAMP就把Apache、PHP5、MySQL5、phpMyAdmin等都装好了。(提醒:装好后mysql用户root默认密码为空)。点击WAMP的图标在ApacheModules下开启rewrite_module。如果你要使用Zend_Db以 Mysql为例,还得开启PHP Setting->;PHPExtensions下的php_pdo和php_pdo_mysql扩展。
* 安装TortoiseSVN。 TortoiseSVN是svn在win下的客户端。安装TortoiseSVN的目的是为了获取最新的ZF源码,如果你使用zend定期发布的zf的源码,可以跳过这一步。
* 获取ZF源码。如果使用TortoiseSVN,在你磁盘的某处建立一个文件夹(比如ZF),在文件夹上点击右键,选择SVNcheckout,在地址栏中输入http://framework.zend.com/svn/framework/trunk,点击确定,TortoiseSVN就开始工作获取zf的源码了。你也可以http://framework.zend.com/download下载源码。不过总得来说,还是使用SVN方便。
* 为ZF添加路径。编辑php.ini(wamp的php.ini在apache/bin目录下),编辑include_path字段(举例include_path = ".;G:你的ZF路径library")。
* 配置ZF项目。推荐使用Haohappy的方法http://www.111cn.net/bbs/thread-5730-1-4.html。
* 开始旅程。推荐论坛里的xgwork的新手学习 Zend Framework 框架连载(因为上一步中已经为ZF添加了路径,所以在该教程中的set_include_path可以省略),还有IBM的《理解Zend Framework》系列。
Apache的配置:
编辑httpd.conf文件
找到
#LoadModule rewrite_module modules/mod_rewrite.so 这行并将前面的”#”去掉
最后找到
AllowOverride None
更改为:
AllowOverride All,才能让/htaccess文件起作用
到此Apache的配置完成
版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文章原始出版、作者信息和本声明。否则将追究法律责任。http://blog.111cn.net/mayongzhan - 马永占,myz,mayongzhan
首先感谢一下小李教我这个东西.
前提:
windows下
已经使用ssh工具用rsa连好了远程的linux
(就是说只是不会使用eclipse连接)
步骤:
打开zend studio for eclipse
在php explorer(就是项目)旁边有个remote
里面就是远程的服务器了.
new Connection
选择SSH only
NEXT
Hostname添地址 Connectionname和上面一样,Description随便
NEXT
NEXT
FINISH
然后点菜单栏
window - preferences
在过滤总直接输入ssh
然后看到ssh2点
点第二个key management
generate RSA key...
下面的passphrase两个输入密码
...先不要点确定...
先把那段代码复制到linux下的你的目录下的.ssh 的au*****文件下
然后...在点确定....
然后连吧....