Home  >  Article  >  Backend Development  >  How to intercept standard output using ob_start and other functions in PHP

How to intercept standard output using ob_start and other functions in PHP

高洛峰
高洛峰Original
2017-01-03 15:23:111119browse

I recently used PHP to develop a software under cli and encountered such a problem. I wanted to collect the output from the PHP script, so I used the two functions ob_start and ob_end_flush, which did collect the output, but also printed them to the console interface. What I want to ask is if there is a way to prevent PHP from outputting information to the console. In principle, this software does not allow printing anything to the console.

php-cli itself executes the script independently of the web server. I don’t know how you got the data you are getting now? If you do not get the value returned by executing the php program through cli, you can use ob_get_clean()

which will get the cached content and then clear the cache area. This can achieve the effect you mentioned of not displaying the display interface.

Of course, you can also get the buffer content, then clear it (control not to output to the console), and then flash the content to the web server for processing

It has been done according to the above method. I have used this series of functions before, but I haven’t used them for so long that I forgot about them.

What we are working on now is a multi-process HTTP dynamic server based on PHP. A graduation thesis is just a test product and has no practicality.

The execution result of the php-cgi program is the standard input and output, so the output results can only be intercepted by obtaining the standard input and output. Pipes should also be able to do it, but I won’t

That’s all the above That’s the entire content of this article, I hope you all like it.

For more related articles on how ob_start and other functions in PHP intercept standard output, please pay attention to the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn