Heim  >  Artikel  >  Backend-Entwicklung  >  关于laravel的获取器:get{xxxx}Attribute和数据类型的问题

关于laravel的获取器:get{xxxx}Attribute和数据类型的问题

WBOY
WBOYOriginal
2016-08-08 09:06:521430Durchsuche

<code>laracast上教学用的方法,成功获取了tag_list</code>

关于laravel的获取器:get{xxxx}Attribute和数据类型的问题

<code>模仿写的获取role_list,报错了</code>

关于laravel的获取器:get{xxxx}Attribute和数据类型的问题

<code>如果直接在controller里面这样直接用$user->roles是能成功获取的</code>

关于laravel的获取器:get{xxxx}Attribute和数据类型的问题

疑问:

1,出现上面三个图的情况,是什么原因?

2,能否解决,让在传统的resource控制器里面的通过$id来查找到的内容也能直接调·用get{xxxx}Attribute里面的xxxx

3,下图中,这两种传参方式获取到的结果是一样的结构吗?

关于laravel的获取器:get{xxxx}Attribute和数据类型的问题

回复内容:

<code>laracast上教学用的方法,成功获取了tag_list</code>

关于laravel的获取器:get{xxxx}Attribute和数据类型的问题

<code>模仿写的获取role_list,报错了</code>

关于laravel的获取器:get{xxxx}Attribute和数据类型的问题

<code>如果直接在controller里面这样直接用$user->roles是能成功获取的</code>

关于laravel的获取器:get{xxxx}Attribute和数据类型的问题

疑问:

1,出现上面三个图的情况,是什么原因?

2,能否解决,让在传统的resource控制器里面的通过$id来查找到的内容也能直接调·用get{xxxx}Attribute里面的xxxx

3,下图中,这两种传参方式获取到的结果是一样的结构吗?

关于laravel的获取器:get{xxxx}Attribute和数据类型的问题

<code><?php /**
 * Created by PhpStorm.
 * User: shellus
 * Date: 2016-08-05
 * Time: 12:57
 */
class Test
{

    /**
     * 魔术方法,访问类成员时,会转向调用到此方法
     */
    function __get($name)
    {
        return call_user_func(array($this, $name));
    }

    public function users(){
        return ['a','b','c'];
    }
}

$test = new Test();
var_dump($test -> users);</code>

你问的是这个吗?

1,如楼上所说,是通过魔术方法获取到的
2,model的子类实例都可以这样用
3,返回的都是model子类

我为啥还不能点赞

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn