I have two php pages. I want to fetch b.php in a.php.
In my a.php:
$ch = curl_init("b.php");
echo(curl_exec($ch));
curl_close($ch);
Doesn’t work;
But:
$ch = curl_init("www.site.com/b.php");
echo(curl_exec($ch));
curl_close($ch);
is OK. I’m sure a.php is under http://www.site.com.
Why curl can’t work with relative path? Is there a workaround?
Curl is a seperate library which does not really know anything about webservers and where it’s coming from or (philosophicaly) why it is there. So you may ‘fake’ relative urls using one of the two _SERVER variables:
See: http://php.net/manual/en/reserved.variables.server.php
Edit update:
I thought a moment longer about this: do you really need to fetch it with curl?
You usually may also fetch any output of another script like this and save the overhead of loading it through a new http request: