使用 trait 时报PHP Parse error: syntax error, unexpected 'use' (T_USE) 这个错误

找一大圈原因, 最后终于找到了, 不是PHP版本的原因[], 是自己把use 写到了类里的方法里了.

这个东东,  不能脱离类单独使用, 否则的话, 会被认为是命名空间了. 

测试例子如下

// Trait.php

trait CustomerFunctionsTrait {

    public function plus ( $a = 1, $b = 1 ) { 
        echo $a + $b; 
    }   

    public function minus ( $a = 5, $b = 1 ) { 
        echo $a - $b; 
    }   

}


// Test.php
include ‘./Trait.php‘;
class MyTest {
    use CustomerFunctionsTrait;
    public function plus () {
        // use CustomerFunctionsTrait;  //这是我错的地方, 把use 写到方法体里了 - -!! 
        echo ‘str‘;
    }
}

$n = new MyTest;
$n->minus();

 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。