我不在PHP编程,但PHP本身。 有没有可能PHP的创建者将回声转储为例如 var_dump这样的数组?是否有可能在php中使用echo会像var_dump一样工作?
回答
有没有可能是PHP的创造者将回声倾倒例如数组喜欢做的var_dump ?
我想你的意思是,如果echo
被传递,而不是显示它的数据类型(例如Array
)的当前行为,不能作为一个字符串显示,显示转储的变量,?
这确实有意义,但也是危险的:如果一个对象包含最终用户不应该看到的数据,该怎么办?
我怀疑echo
函数(或者更准确地说,PHP的字符串解析函数)会经历如此根本性的变化,正是出于这个原因。
@stereofrog我正在谈论向后兼容性。将'array'的输出更改为完全变量转储*将是彻底的改变。 – 2010-09-08 13:55:58
Yes.Dump,如果不能显示变化。向后兼容性是我没有想过的问题。 – Jask 2010-09-10 11:17:32
对现有功能的这种彻底改变将成为大量破碎代码的秘诀。所以我会说不。
这就是说,这是我们谈论的PHP,所以它wouldnt让我感到吃惊....
什么? PHP往往会推迟很多向后兼容性。即使这是一场灾难,“register_globals”仍然可用。如果你想要大规模的向后兼容性破解,请参阅python。 – Artefacto 2010-09-08 13:05:12
在php中,您可以创建一个像数组一样行走并像数组一样呱呱叫的对象,但仍然是一个带有可自定义的__toString方法的对象。
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;
当然,最好是数组已经是其他语言中的普通对象,但我不认为这会在最近的将来发生。
- 1. Codeigniter echo/var_dump不工作
- 2. 是否有可能在PHP中像Java的socksProxyHost一样?
- 3. 是否有可能像使用tcpdump一样在php中捕获flv链接?
- 4. 是否有可能使计算机像蓝牙HID设备一样工作?
- 5. 是否有可能使一串代码像一个模块一样起作用?
- 6. 是否有可能像使用Javascript一样在AS2中使用闭包?
- 7. 是否有可能像Apache一样使用Glassfish请求?
- 8. 是否有可能使div只使用CSS和HTML在IE6中像表一样工作?
- 9. php echo不能在html中工作
- 10. 有没有可能使函数像for循环一样工作?
- 11. 是否有可能在Java中像c#一样形成设计?
- 12. 是否有可能像在模块中一样使用Angular 2加载组件?
- 13. 是否包含像php中的函数一样的工作?
- 14. 是否有可能使Scalate模板像Apache Wicket模板一样?
- 15. 是否有可能使数据库像克隆一样行事?
- 16. 是否有可能使querySelectorAll像getElementsByTagName一样生存?
- 17. 是否有可能在PHP中“绊住”一个网页图像?
- 18. 是否有像Excel一样的“间接”可可功能?
- 19. 是否有可能像使用字典一样使用Enum值对
- 20. 是否有可能使CursorAdapter在recycleview中设置,就像ListView一样?
- 21. 在mysql 5.6.21中是否有像max_statement_time一样的可用变量?
- 22. Node.js fs.readFile()是否像PHP的file_get_contents()一样工作?
- 23. 是否有可能使JavaScript中的循环像批处理文件中的循环一样工作?
- 24. c#是否有一个像缓存一样工作的集合?
- 25. 是否有可能使图像居中?
- 26. 是否有可能使用curl PHP
- 27. 是否有可能使用PHP
- 28. 是否有可能在joomla中像drupal一样分类和用户管理?
- 29. PHP是否可以在TML中工作?
- 30. php不同输出的echo和var_dump
为什么他们应该有一个合适的函数,即'var_dump'? – joschi 2010-09-08 12:14:32
为什么当var_dump和print_r都存在这样做? – Chris 2010-09-08 12:14:32
更改回显与var_dump()相同会破坏很多现有的PHP代码,只留下print(printf等)来显示变量值而不是变量信息 – 2010-09-08 12:24:10