这里的重载和java的重载就不是一个意思,不敢弄混了。
public function __call($name,$args){
if($name=='speedDown'){
$this->speed-=10;
}
}
public function __call($name,$args){
if($name=='speedDown'){
$this->speed-=10;
}
}
2016-12-14
主要考察的是访问权限,受保护的方法在类外面是不可以被直接调用的,这个时候怎么办,在类里面找个熟,定义一个public(公共)方法调用里面受保护的方法(同类之间方法之间访问不受限制), 这样明白 ok
2016-12-14
在访问PHP类中的成员变量或方法时,如果被引用的变量或者方法被声明成const(定义常量)或者static(声明静态),那么就必须使用操作符::,反之,那么就必须使用操作符->。
如果从类的内部访问const或者static变量或者方法,那么就必须使用自引用的self,反之就必须使用自引用的$this。
这样就清楚多了吧 :)
如果从类的内部访问const或者static变量或者方法,那么就必须使用自引用的self,反之就必须使用自引用的$this。
这样就清楚多了吧 :)
2016-12-14
$this->speed += 10; 意思就是把当前变量speed的值先加10然后赋值给自己。
看多有人说: $this -> speed+=10; 跟$this ->speed=speed+10;一样 那你就大错特错了 后面这样写才一样$this ->speed=$this->speed+10; 建议你去研究与一下关键字 你应该没有学过其他面向对象的语言吧。
看多有人说: $this -> speed+=10; 跟$this ->speed=speed+10;一样 那你就大错特错了 后面这样写才一样$this ->speed=$this->speed+10; 建议你去研究与一下关键字 你应该没有学过其他面向对象的语言吧。
2016-12-14
<?php
$str = "<ul>
<li>item 1</li>
<li>item 2</li>
</ul>";
//在这里补充代码,实现正则匹配所有li中的数据
$p="/<[^>]+>(\w+\s\d)<\/[^>]+>/i";
preg_match_all($p,$str,$matches);
print_r($matches[1]);
?>
$str = "<ul>
<li>item 1</li>
<li>item 2</li>
</ul>";
//在这里补充代码,实现正则匹配所有li中的数据
$p="/<[^>]+>(\w+\s\d)<\/[^>]+>/i";
preg_match_all($p,$str,$matches);
print_r($matches[1]);
?>
2016-12-14
<?php
session_start(); //开启session
$_SESSION['name'] = 'jobs'; //设置session值
unset($_SESSION['name']); //删除session,此时session已经被删除了,不存在了
if (isset($_SESSION['name'])) {//判断,如果session还存在
echo $_SESSION['name'];//那么输出session的值
}
else{ //如果不存在,
echo '$_SESSION已被删除';//输出‘session已被删除’
}
session_start(); //开启session
$_SESSION['name'] = 'jobs'; //设置session值
unset($_SESSION['name']); //删除session,此时session已经被删除了,不存在了
if (isset($_SESSION['name'])) {//判断,如果session还存在
echo $_SESSION['name'];//那么输出session的值
}
else{ //如果不存在,
echo '$_SESSION已被删除';//输出‘session已被删除’
}
2016-12-12