我有这个简单的问题。在这个简单的脚本中:
<?php
class MyClass {
public var1 = '1';
public var2 = '';
public var3 = '3';
}
$class = new MyClass;
foreach ($class as $key => $value) {
echo $key . ' => ' . $value . '<br />';
}
?>
结果将是:
var1 => 1
var2 =>
var3 => 3
如果我想迭代所有这些属性,以便我可以找出哪一个是空的,我如何为对象中的空属性赋值?
foreach ($class as $key => $value) {
if (empty($value)) {
$value = 'something';
}
}
...没有用,因为我猜PHP认为$value
是一个实际的变量,而不是一个参考。
试试这个:
foreach ($class as $key => $value) {
if (empty($value)) {
$value = 'something';
$class->$key = $value;
}
}