PHP撰写的日志

误人子弟的书《PHP5 项目实战开发详解》

我只看了《PHP5 项目实战开发详解》此书的其中一章就说它误人子弟也许太过了,但是作为一本为php初学者量身定制的秘籍的书出现如此多的错误也实在太不应该了。

而且文中出现的部分习题就是PHP手册中抄下来的,没有一点创意。

如果你有买这本的念头趁早打消吧。

我所看的是“第10章 常用函数”,可以在这里下载:

http://bbs.phpchina.com/viewthread.php?tid=54650

大家可以下载下来对照一下我所举的错误之处(如果我理解出错还请大家谅解):

1.正则表达式函数中

^(cat | dog)$
必须以cat 开始并且以dog 结尾。(这个表达式只能匹配cat 和 dog,在Emeditor中测试)

2.数组的操作中的习题

以下程序横线处应该使用的函数为:
<?php
$email = ‘langwan@phpchina.com.cn’;
$str = ____($email,’@’);
$info = ____(‘,’,$str);
____($info);
?>
输出结果为:
Array ([0] => @phpchina [1]=>com[2]=>cn)
A.strchr, split, var_dump
B.strstr, explode, print_r
C.strstr,explode, echo
D.strchr, split, var,_dump(这虽然不是正确答案,但是明显错了)

3.字符串其他处理函数,介绍的两个函数开关居然大写,如果能运行算他狠。

Trim(string):删除字符串的开始和结尾的空白符。
Ltrim(string):删除字符串开始的空白。

4.部分给出瑞在源代码中的 单引号 居然是中文的全角字符,复制到Zend Studio中就可以看再来了。

此书的其它不足可以查看冰古blog写的 令人失望的《PHP5项目开发实战详解》

Zend Studio不支持PHP5语法的解决方案

在使用Zend Studio 5.5.1编辑FCKeditor中的fckeditor_php5.php文件时,提示文件的开始部分有如下错误:语法错误:意外的$InstanceName

 根据经验应该是Zend Studio 不支持PHP5的语法造成的。

但是这应该不是Zend Studio的问题,如下新闻题目所示:“Zend Studio 5.1 正式发布 全面支持 PHP5.1”

最终在Zend Studio的“首选项”设置里发现了对PHP版的设置。

打开“工具”->“首选项”->“桌面”标签->“PHP版本”选择PHP5

即可,见图:

 

图片附件:
zend-studio-public-1.png

图片附件:
zend-studio-public-2.png

图片附件:
zend-studio-public-3.png

Zend Studio:PHP程序调试简介

Zend Studio 支持两种调试方式:内部调试器,服务器端调试器

内部调试器:使用本地Zend Studio 自带的PHP4/5引擎执行程序。
服务器端调试器:使用服务器上的PHP环境来执行程序。

因为服务器一般为linux,而我们开发使用一般为windows,那么PHP环境肯定有所不同,选择使用服务器端

调试器更合理。

下面就以服务器端调试为例来说明问题:

a. 配置Zend Studio支持服务器调试
打开 “工具”->“首选项”->“调试”,显示如下对话框:
选择“服务器”调试方式,并在调试服务器URL中填写正确的URL即可。

现在在测试服务器上安装有PHP4及PHP5两个版本的调试器,
PHP4 对应URL为:http://192.168.3.33
PHP5 对应URL为:http://192.168.3.33:81
其他的设置为默认值即可。
测试调试器的配置是否正确:
打开:“工具”->“检查debug server连接”进行测试。

b. 调试命令说明

“添加监视点。。。“:即添加你关心的变量,它在单独的窗口中显示它的值。

“调试URL。。。”:单步执行给定的URL

“概要文件URL。。。”:对给定的URL的程序执行情况做分析统计,包括程序中各函数的调用,效率,等。

Sablog:"上传附件发生意外错误"的解决方案

今天在一国外主机上安装好Sablog后现在上传附件时提示如下错误信息:
"上传附件发生意外错误",经过测试后发现此错误是出现在:admin/uploadfiles.php的第62行。
PHP的move_uploaded_file函数无法将附件复制到附件目录。

同时我发现在新生成的存放附件的目录date_200801目录下没有生成index.htm此文件,

由此我怀疑是否生成的这个目录权限不对,但是在FTP中检查后发现此目录的权限为drwxrwxrwx。

但是当我把Sablog的“附件存放方式”改为“全部存放同一目录”后,文件上传却为正常。

于是,在FTP中删除date_200801目录后,然后再新建date_200801目录,并将权限设置为777,重新上传附件,此时却正常,不再有“上传附件发生意外错误”。

呵呵,因此判断发生此问题应该是服务器的权限设置可能有问题,Sablog的上传功能不存在问题。

解决方案是:Sablog的“附件存放方式”改为“全部存放同一目录”,同是正确设置那个目录的权限。

或者是每个月到attachments目录去建"date_年月"的目录并将权限设置为777。

收工!

Zend Studio:无法调试Failed to connect to host

Zend Studio 5.5.0版本,Windows2003操作系统,IIS6.0环境下无法对页面进行调试。出现如下错误:Failed to connect to host ‘192.168.146.1′.

检查“Debug Server”连接成功

原因不明!

重新安装ZendStudioServer后解决此问题。

如有遇此问题的朋友请指教。

或者到此讨论:http://www.zxlm.cn/fh/viewthread.php?tid=6662

Zend产品介绍-PHPer应该知道的

Zend Platform使应用持续稳定运行的PHP生产环境。Zend Platform
        Zend Platform 是唯一的一个可以让你的应用持续稳定运行的PHP生产环境。在为IT个人和企业提供企业级的高稳定性的应用的前提下,Zend Platform可以提供给你高性能和扩展性等特点,并让你的用户在你的Web上以最好的响应速度愉快地浏览。
        Zend Platform 也是唯一地能够保证稳定的服务的平台。它通过PHP监控和即时的错误处理系统,来代替传统的错误定位方式,让你的开发和维护工作轻松而愉快。

 

Zend Studio被证实的最优秀的PHP开发环境Zend Studio
        Zend Studio 是专业开发人员在使用PHP整个开发周期中唯一的集成开发环境 (IDE),它包括了PHP所有必须的开发部件。通过一整套编辑、调试、分析、优化和数据库工具,Zend Studio 加速开发周期,并简化复杂的应用方案。

 

Zend Guard保护你的代码!Zend Guard
        Zend Guard 可以实现对PHP应用的脚本进行加密保护和对PHP应用的产品进行商业许可证管理。Zend Guard 可以为许多软件生产商和IT服务提供商提供安全的完善的加密和安全的产品发布系统。可以轻松实现产品发布的管理。

 

Zend Optimizer用于优化代码的方法来提高php应用程序的执行速度。实现的原理是对那些在被最终执行之前由运行编译器(Run-Time Compiler)产生的代码进行优化。 优化能提高你的盈利能力,一般情况下,执行使用Zend Optimizer的php程序比不使用的要快40%到100%。

Zend WinEnabler是一个新推出的产品。它的作用就是使PHP在Windows下更稳定。同时,通过Zend WinEnabler,PHP在Windows下的应用将可以达到在Linux下运行时相同的稳定性和性能。最终,Zend WinEnabler让PHP应用在Windows下达到和Linux下面同样的规模。

Zend Core是Zend 为了用户更准备、快捷地安装PHP而开发的一个免费的产品。用户下载Zend Core进行安装,通过半图形化的安装界面,输入必需的信息就可以安装PHP了。ZendCore代替了传统的PHP的Configure->make->make install的过程。使得PHP的安装更加简便、标准。目前Zend Core主要支持:IBM服务器,Oracle数据库。