我不是在PHP中编程,而是PHP本身。 是否有可能php的创建者将回调转储为例如数组 var_dump呢?
答案 0 :(得分:4)
php的创建者是否有可能使回转转储为例如var_dump这样的数组?
我认为你的意思是如果echo
传递了一个无法显示为字符串的变量,显示转储,而不是显示其数据类型的当前行为(例如Array
)?< / p>
这确实有意义,但也很危险:如果一个对象包含最终用户不应该看到的数据怎么办?
我怀疑echo
函数(或更确切地说,PHP的字符串解析函数)将经历如此彻底的改变,正是出于这个原因。
答案 1 :(得分:2)
对现有功能的这种彻底改变将成为许多破坏代码的一个秘诀。所以我会说不。
那就是说,这是我们正在谈论的PHP,所以它不会让我感到惊讶....
答案 2 :(得分:2)
class ary implements ArrayAccess
{
function __construct() {
$this->a = func_get_args();
}
function offsetExists($k) {
return isset($this->a[$k]);
}
function offsetGet($k) {
return $this->a[$k];
}
function offsetSet($k, $v) {
$this->a[$k] = $v;
}
function offsetUnset($k) {
unset($this->a[$k]);
}
function __toString() {
return implode(', ', $this->a);
}
}
$a = new ary(11, 22, 33);
$a[1] = 66;
echo $a;
当然,最好是数组已经是普通对象,就像其他语言一样,但我不认为这会在最近的将来发生。