1、foreach 循环用于遍历数组,在vscode中输入foreach时默认的提示是这样的。
foreach ($variable as $key => $value) {
# code...
}
提示中除了给了$value之外,还给了$key值,key值一般在关联数组中自行定义的。但是普通数组中的key值是数组的索引,所以vscode这样提示也是没错的。
<?php
$x=array("php","java","python");
foreach ($x as $value) {
echo $value.PHP_EOL;# code...
}
foreach ($x as $key => $value) {
echo $key.PHP_EOL;# code...
}
?>
输出结果可以看出,key值输出的是索引值。
2、PHP 实现了一种代码复用的方法,称为 trait。trait的定位在子类与基类中间,trait内实现的方法可以在子类使用时调用。执行顺序:子类重载的方法---->使用trait内实现的方法——>基类的方法。
<?php
class Base{
public function sayHello(){
echo 'BASE';
}
}
trait SayWorld{
public function sayHello(){
//parent::sayHello();
echo "TRAIT";
}
}
class MyHelloWorld extends Base{
/*public function sayHello(){ //子类重载方法
echo "subclass";
}*/
use SayWorld;//使用trait内方法
}
$o=new MyHelloWorld();
$o->sayHello();
echo PHP_EOL;
?>
输出结果:子类中的相同方法被注释掉了,所以用的trait内的同名方法。
PHP是世界上最好的编程语言,没有之一!