次のようなオブジェクトのプロパティを設定できる PHP メソッドが欲しいです。
array_fill_keys($keys, '');
配列のインデックスに対して行う
次のようなオブジェクトのプロパティを設定できる PHP メソッドが欲しいです。
array_fill_keys($keys, '');
配列のインデックスに対して行う
これは仕事をするかもしれません:
// Same value for al properties, uses array values only
function object_fill_properties($properties, $value) {
foreach ($properties as $property) {
if (property_exists($this, $property)) {
$this->$property = $value;
}
}
}
// Different values for each property, uses key-value array
function object_fill_properties_kv($properties) {
foreach ($properties as $property => $value) {
if (property_exists($this, $property)) {
$this->$property = $value;
}
}
}
ご覧のとおり、これは既存のプロパティに対して機能します。一方、実行時にオブジェクトにプロパティを追加しようとしている場合は、代わりにこの質問を見てください。