当前位置: 首页 > 图文教程 > 网络编程 > PHP > 不错的PHP学习之php4与php5之间会穿梭一点点感悟

PHP
PHP实例教程:Output Control输出函数
memcached和mysql主从环境下PHP开发
基于LAMP架构设计的WEB框架
PHP代码:验证IPV6地址是否合法的正则
PHP环境快读搭建绿色软件包PHPnow
PHP教程:$_SERVER的详细参数整理
php获取url字符串截取路径的文件名和扩展名的函数
在命令行下运行PHP脚本[带参数]的方法
PHP 实用代码收集
PHP 时间转换Unix时间戳代码
关于php fread()使用技巧
PHPMailer 中文使用说明小结
php addslashes和mysql_real_escape_string
php cout<<的一点看法
PHP 变量的定义方法
php学习之 认清变量的作用范围
php 静态变量与自定义常量的使用方法
认识并使用PHP超级全局变量
通过具体程序来理解PHP里面的抽象类
php读取xml实例代码

不错的PHP学习之php4与php5之间会穿梭一点点感悟


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 56 ::
收藏到网摘: n/a

昨天把php空间开通了,服务器安装的是php4版本,接近二十天来开始用php写东西,自己搭建的平台都是php5,当然在写的时候还是十分小心,因为几乎每一段代码的要点都是先查了参考然后写出来的,那就么可以看到参考里那些是php4支持那些是php5中才新增的。结果上传上去之后,才发现不得不修改!!

1.修改字符串中的类方法调用,字符串我在php5中写成如下:
$htmlstr=<<<HTML
<a href="user.php?u={$dataobj->getuserinfo('name')}">用户信息</a>
HTML;
最后PHP4我不得不改成:
$user=$dataobj->getuserinfo('name');
$htmlstr=<<<HTML
<a href="user.php?u={$user}">用户信息</a>
HTML;
2、类方法调用反回对像问题,我在php5中这样写的:
$user=$dataobj->readrecord()->d_user;
而最后在PHP4中我不得不改为
$row=$dataobj->readrecord();
$user=$row->d_user;
本来我想加上()写成:
$user=($dataobj->readrecord())->d_user;
让先反回对像,然后在对像上调用属性,然后丢掉对像。可是事实证明php4对对像没有这种支持能力!!
3、函数的默认参数,我在php5中是这样写的:
function set($a,$b=3){
echo $b;
}
调用写的是set(4);
而在php4中,无法取得$b的默认值,查看到参考可以用 使用 func_num_args(),func_get_arg(),和 func_get_args() 函数. 取得变长参数