10、PHP语法要点3(foreach、trait)

文章介绍了VSCode在使用foreach循环时的默认提示,包括key和value的含义,特别是在遍历普通数组时key为索引的情况。接着讨论了PHP的trait特性,它是代码复用的一种方式,位于子类和基类之间,可以提供方法的实现并在子类中调用。示例展示了trait如何影响子类中同名方法的执行顺序。
摘要由CSDN通过智能技术生成

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是世界上最好的编程语言,没有之一!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值