Question

I want 1 PHP file to "run" (include?) another PHP file on the same server, and access its echo'ed output as a string.

How do i do this in PHP? Any inbuilt functions to do this?

Or any better way of executing another PHP file and getting its output?

Was it helpful?

Solution

You can use PHP's output buffering to accomplish this:

ob_start(); // begin collecting output

include 'myfile.php';

$result = ob_get_clean(); // retrieve output from myfile.php, stop buffering

$result will then contain the text.

OTHER TIPS

You can't include a PHP script that is on an external website/server into your local script - unless you enable allow_url_include on your php.ini (if you have access to it)

Instead, you can let that website/server render the page and get the resulting HTML output on your local script by doing this:

$result = file_get_contents('http://127.0.0.1/myfile.php');
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top