[英]Can I redirect all PRINT and ECHO output to a PHP function?
我继承了一些古老的代码,可以深入了解发生了什么。 在整个意大利面条代码中散布着几乎不可能遵循的数百个回显和打印。
我一直在研究和搜索使用STDOUT的变体,但是找不到任何关于使用PRINT / ECHO的替代方法。
我正在寻找一种用我自己的函数(例如“ MyEcho”)有效替换 PHP Echo / Print的方法,该函数将询问/记录何时何地的打印内容。
有没有办法做到这一点,还是我必须编写函数,并替换整个代码中使用的所有打印/回显?
使用输出控制功能 ,例如ob_start()
。
似乎不可能直接使echo过载,但这另一个StackOverflow问题可能会为您带来一些潜在的机会。
您可以进行批量搜索/替换,将echo
替换为echo __FILE__ , __LINE__ ,
作为回波状态手册 ,它不是真正的功能,而是一种语言构造,因此您不能像使用系统功能那样覆盖它。 (使用名称空间)
我认为您最好的选择是简单地使用诸如ecobyte之类的东西来替换文本,以替换echo
并使用其他内容进行print
。
请记住,您可能会遇到问题,因为echo
和print
不需要括号,但对于您的功能却需要括号。 还可以呼应允许使用多个参数,
,这也可能会破坏你自己的方法。
我认为没有什么可以做的了,然后全部替换并希望最好或手动完成。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.