PHP workaround – how to use file_get_contents() without allow_url_fopen

php_artikel_logoI admit, the title of this article is somewhat misleading. The PHP function file_get_contents(), which can be used to read files from the internet into a string, just does not work with allow_url_fopen disabled. On that not even this article will change anything.
However, if you want to develop an application or a script, that should work on as many server environments as possible, such as a wordpress plugin, so there is a good workaround for all the environments where allow_url_fopen is disabled. And just this little snippet/workaround is what I want to show and explain to you today.

$file = "";
if (function_exists(‘curl_version’))
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $file);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
$content = curl_exec($curl);
else if (file_get_contents(__FILE__) && ini_get(‘allow_url_fopen’))
$content = file_get_contents($file);
echo ‘You have neither cUrl installed nor allow_url_fopen activated. Please setup one of those!’;

First, it is checked whether the cURL extension is available on the server. If […]