Я просмотрел исходный код laravel и нашел следующий код:
$attributes = $this->addDateAttributesToArray(
$attributes = $this->getArrayableAttributes()
);
как видите, есть присвоения переменной $attributes. Один из них находится в списке параметров. Хотя это допустимый синтаксис, он немедленно перезаписывается "внешним" назначением.
Зачем кому-то писать такой код? Есть ли какое-то особое поведение, о котором я не знаю?






Как ясно видно в комментариях.
If an attribute is a date, we will cast it to a string after converting it to a DateTime / Carbon instance. This is so we will get some consistent formatting while accessing attributes vs. arraying / JSONing a model.
Во-вторых, в этом нет ничего необычного. это всего лишь метод, позволяющий сделать программу читаемой.
Вот пример.
return new HttPStatus(301);
не могли бы вы рассказать мне о том, что делает приведенный выше код ?.
Возможно, вы загуглите и о коде статуса HTTP 301, который говорит нам, что 301 Moved Permanently используется для постоянного перенаправления URL-адресов.
Давайте посмотрим на другой пример.
json_decode($string, true);
Можете рассказать, почему мы пропускаем true?
какая это цель.?
Если у вас нет опыта работы с json_decode($string, true);, вы еще раз погуглите, почему мы должны передавать true в json_decode().
у нас есть еще один пример.
json_decode($string, $returnArray = true);
Теперь из приведенного выше кода вы можете ясно понять, что если мы передадим true, он вернет массив. $returnArray = true - это просто одноразовая переменная, которая увеличивает читаемость вашего кода.
То же самое и с этим
// If an attribute is a date, we will cast it to a string after converting it
// to a DateTime / Carbon instance. This is so we will get some consistent
// formatting while accessing attributes vs. arraying / JSONing a model.
$attributes = $this->addDateAttributesToArray(
$attributes = $this->getArrayableAttributes()
);
$attributes = $this->getArrayableAttributes() - это просто случайная переменная, которая сообщает нам, что мы передаем атрибуты, что увеличивает читаемость кода.
Надеюсь это поможет.
это странно, потому что я не могу найти его где-либо еще в коде, и было бы намного больше возможностей
Возможно, вы захотите создать проблему в репозитории, если считаете, что это ошибка. Они, вероятно, также лучше знают, почему это так. И если вы это сделаете, пожалуйста, свяжите проблему здесь, я тоже заинтригован.