Определение переменных-членов внутри операции массива
Мне было интересно, если это плохое соглашение, чтобы объявить мои переменные-члены внутри массива, который я позже использую где-то еще (в коде ниже, я передаю в функцию insertArray()). Вот мой код:
class myClass{
private $ID;
private $name;
private $type;
private $catID;
private $isDefault;
private $isRequired;
function __construct($compID = 0, $catID = 0, $name = '', $type = '', $default = false, $required = false){
$myArray = array(
'name' => ($this->name = $name),
'type' => ($this->type = $type),
'catID' => ($this->catID = $catID),
'isDefault' => ($this->isDefault = $default),
'isRequired' => ($this->required = $required)
)
self::insertArray($myArray);
}
}
Разве плохо определять мои переменные-члены внутри $myArray? Я уверен, что в php синтаксис вида ($this->value = $value) будет хранить $ value внутри $ this-> value, а затем просто оценивать ($this->value).
1 ответ
Решение
Если это плохо или нет, зависит от правил кодирования, которым вы следуете. Большинство из них допускают только одну операцию на строку, но у вас есть две.
Взгляните, например, на стандарт PSR-2.
Это также не так легко читать, потому что это не распространено.