Как я могу установить значение для массива, как методы изменения? - PullRequest
0 голосов
/ 16 апреля 2020

я хочу установить значение с ключом к массиву, например, чан

Я просто хочу знать, как Laravel сделал это

это laravel код красноречивого запроса на обновление

$variable=Model::find(3);
$variable->columnname="name";
$variable->save();

это мой код

$variable=["name"=>"Eric","email"=>"example@gmail.com"]; 
$variable->name="jack";
$variable->email="testest@gmail.com";
print_r($variable); or $query="update tblname ..."

Он не работает и выдает ошибку

как работает эта система

1 Ответ

0 голосов
/ 17 апреля 2020

Я думаю, вы смешиваете некоторые вещи здесь.

// Array syntax
$array = [];
$array['key'] = 'value'; // adding "value" to the array with the key "key"
$array['key'] = 'newValue'; // Values can be changed like this.

// Object syntax
$obj = new stdClass;
$obj->key = 'value'; // adding "value to the object with as the attribute "key"

НО это было бы просто для стандартного класса. Когда вы используете уже существующий класс (в вашем примере «Модель»), вы не всегда можете получить доступ или изменить атрибуты. Вот почему вы часто можете видеть такие методы, как

$obj->getName(); //to get the value of "name" of the class
$obj->setName(); // to set...

Getter and Setter? Я сделал быстрый поиск. Я думаю, что ссылка должна прояснить пару вещей. И для вашего кода:

// option 1, create a class with getter and setter, see link
// option 2
$variable = new stdClass;
$variable->name = "Jack";
...
...