لا يوجد طريقة للتحايل ولكن قم بتجربة الدوال تدريجياً بحيث تتحقق انه يمكن استخدامها على السيرفر ومن ثم استخدمها
وانا افضل الترتيب التالي :
curl
fsockopen
fopen
بالعكس يوجد هناك تحايل
مثل دالة file_get_contents التي لاتعمل في إصدارات الـ PHP الأقل من 4.3.0 بإمكانك الاستعاضة عنها بتلك الدالة :
كود PHP:
if (!function_exists('file_get_contents'))
{
function file_get_contents($filename, $incpath = false, $resource_context = null)
{
if (false === $fh = fopen($filename, 'rb', $incpath))
{
trigger_error('file_get_contents() failed to open stream: No such file or directory', E_USER_WARNING);
return false;
}
clearstatcache();
if ($fsize = @filesize($filename))
{
$data = fread($fh, $fsize);
}
else
{
$data = '';
while (!feof($fh))
{
$data .= fread($fh, 8192);
}
}
fclose($fh);
return $data;
}
}
لكن ذلك لاتنفع مع تعطيل خاصية allow_url_fopen
أما في حالة تركيب مكتبة curl فالحل هو بالدالة التالية :
كود PHP:
function opensource($url)
{
$ch = curl_init();
curl_setopt ($ch, CURLOPT_URL, $url);
curl_setopt ($ch, CURLOPT_HEADER, 0);
ob_start();
curl_exec ($ch);
curl_close ($ch);
$string = ob_get_contents();
ob_end_clean();
return $string;
}
لكن في حالة تعطيل خاصية allow_url_fopen + عدم تنصيب مكتبة curl فإن الحل الوحيد هو البرمجة بالـ sockets كما قال hilaby ؟؟
وأتمنى أن يضع لنا دالة تعمل لذلك الغرض ..