簡體   English   中英

我可以在課堂上定義特征變量嗎?

[英]Can I define trait's variable in class?

當我調用$ article-> test()-> uri('test-content')函數時,這是uri變量在trait中顯示測試內容,但在文章類中uri變量返回為null。 如何通過此調用定義uri變量?

性狀/ Query.php:

trait Query
{
    protected $uri;
    protected $v = 'v1';

    public function uri($uri)
    {
        $this->uri = $uri;
        return $this;
    }

內容/ Article.php

class Article extends Api 
{
    use Query;

    public $content;

    public function __construct() {
        parent::__construct();
    }

    public function test() {
        $this->content = $this->v . ' - ' . $this->uri;
        return $this;
    }

當你做

$article->test()->uri('test-content');

它首先調用$article->test() 因此,您尚未調用Query::uri()來填充$uri變量。 您需要撤消它:

$article->uri('test-content')->test();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM