Как удалить массив в защищенном массиве? - PullRequest
0 голосов
/ 03 июня 2018

Мои данные возвращаются в виде:

Illuminate\Support\Collection Object
(
    [items:protected] => Array
        (
            [admin] => Admin
            [user] => User
            [abcd] => Abcd
        )

)

Я хочу удалить массив admin в приведенном выше результате.Я пробовал таким образом unset($data->items->admin) Получение сообщения об ошибке Property [items] does not exist on this collection instance..

1 Ответ

0 голосов
/ 03 июня 2018

Защищено набор разрешений видимости.http://php.net/manual/en/language.oop5.visibility.php

Судя по ошибке, похоже, что вы забыли расширить подкласс.

Вот пример того, что вы пытаетесь сделать.

<code>class a{
    protected $b;
    function __construct(){
        $this->b = Array('test'=>Array());
    }
}

class b extends a{
    function __construct(){
        parent::__construct();// construct extended class
        out($this->b); //returns Array ( [test] => Array ( ) ) 
        unset($this->b['test']);
        out($this->b); // returns Array ( )
    }
}

function out($arr){ // function to output text
    echo "<pre>";
    print_r($arr);
    echo "
";} $ b_test = new b ();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...