日期:2014-05-17  浏览次数:20568 次

关于类的疑惑
<?php
/*
 * Created on 2012-1-19
 *
 *
 * 可以修改私有属性name的值,用 _ _set来实现
 */
 class MyPc {
  private $name;//与一相比将name私有了// name指的是属性
  function __construct($name=""){//初始化name的值
  return $this->name=$name;}

  function __get($name){ //针对5的解决办法
return $this->name; //针对5的解决办法,将name的值调出来
  }
  function __set($n,$v){
  $this->$n=$v;

  }
  private function power(){//此方法前没有给私有化处理,因此默认的是公共的额,若要私有,前面一定要加private//power指的是方法
  return $this->name."打开电源,正在开机....";//通过this关键字将name的值访问到了
  }
 function ok(){
  return $this->power()."开机成功";
 }
 }
 $pc1=new MyPc("我的电脑");
  $pcl->name="ssss";//对name进行赋值
 echo $pc1->name;//对比4,直接访问会出错,因为name是私有的
?>



大家好,注释就不用看了,我是听的视频课,结果应该输出ssss,但是我就输出 我的电脑 
这是哪儿出错了啊

谢谢大家 啊,我一遍一遍对了源程序,就是不知哪儿写错了

谢谢大家

------解决方案--------------------
$pc1=new MyPc("我的电脑");
$pcl->name="ssss";//对name进行赋值
 echo $pc1->name;//对比4,直接访问会出错,因为name是私有的

过年了给自己配副好点的眼镜吧...哈哈哈

pc1 isnot pcl