php - 是否可以在 PHP 中的 ArrayIterator 对象上覆盖 print_r 的行为?

标签 php arrays

我有一个扩展 ArrayIterator 的 PHP 类,并实现了所有必要的方法,使其表现得像一个数组。

这适用于 foreach 循环之类的事情,但调用 print_r它仍然打印出对象的变量,而不是像打印数组那样打印它。

是否有某种方法可以覆盖此行为,以便调用 print_r(我猜 var_dump)将打印此对象的自定义输出?

最佳答案

不,因为它旨在提供有关变量的信息(即它用于调试),而不仅仅是提供它的一些字符串表示形式。

你可以覆盖__toString虽然并使用 echo

关于php - 是否可以在 PHP 中的 ArrayIterator 对象上覆盖 print_r 的行为?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6202478/

相关文章:

javascript - 如何通过 HTML 和 ajax 中的动态按钮从动态文本框中获取文本

php - 如何验证 Google Recaptcha V3 响应?

php - 如何检查是否启用了 allow_url_fopen

javascript - 如何修复未定义的数组

java - '.class' 预期错误 java 和数组

c - 如何从 C 中的函数返回一个数组?

php - 将数据库部署到远程服务器后,我无法将新记录插入到数据库中

php - 使用 Javascript 重定向到带有查询字符串的 URL 时出现问题

python - 将多个数组值更改为一个值

javascript - 如何从一维数组和静态字符串创建对象