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

  昨天把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() 函数. 取得变长参数