السلام عليكم
اعتقد ان العنوان واضح
انا اريد دالة للتحقق من وجود رابط
وشكرا
هل تقصد التحقق من سلامة الرابط حرفيا (يعني عدم إحتوائه على أحرف ورموز غريبة..الخ) أم تقصد التحقق أن رابط الموقع شغال ويمكن الوصول إليه ؟؟
في الحالة الأولى بإمكانك إستعمال الدالة filter_var، مثال :
if (filter_var ("
http://127.0.0.1 ", FILTER_VALIDATE_URL) === FALSE) { die ('Not a valid URL'); }
وإذا كنت تقصد الحالة الثانية، فهذه دالة بسيطة عملتها للقيام بذلك
function url_exists ($url) {
$ch = curl_init ($url);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt ($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows NT 6.1; rv:35.0) Gecko/20100101 Firefox/35.0");
curl_setopt ($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt ($ch, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt ($ch, CURLOPT_HEADER, false);
curl_setopt ($ch, CURLOPT_ENCODING, false);
curl_setopt ($ch, CURLOPT_CUSTOMREQUEST, "HEAD");
curl_setopt ($ch, CURLOPT_HEADER, true);
curl_setopt ($ch, CURLOPT_NOBODY, true);
curl_exec ($ch);
return curl_getinfo ($ch, CURLINFO_HTTP_CODE) == 200 ? true : false;
}
الإستعمال :
if (url_exists ("
http://127.0.0.1 /")) echo "URL exists"; else echo "URL not found";
بالتوفيق لك
التعليقات