Real Time Web Analytics کانال تلگرام لرن روت

PHP

تعیین موجود بودن یک سایت با استفاده از دستورات PHP

نویسنده : پدرام رضایی
تاریخ انتشار:
09:57:11 1394-06-16
مشخص کردن وجود داشتن یک سایت با استفاده از کدهای PHP

شاید در بعضی از مواقع شما نیاز پیدا کردید که با استفاده از دستورات PHP موجود بودن یا نبودن یک سایت را بررسی کنید حالا ما کد مربوط به این کار را برای شما قرار دادیم که می توانید از آن در دستورات خود استفاده کنید.

<?php

       if (isDomainAvailible('http://www.learnroute.ir'))
       {
               echo "Up and running!";
       }
       else
       {
               echo "Woops, nothing found there.";
       }

       //returns true, if domain is availible, false if not
       function isDomainAvailible($domain)
       {
               //check, if a valid url is provided
               if(!filter_var($domain, FILTER_VALIDATE_URL))
               {
                       return false;
               }

               //initialize curl
               $curlInit = curl_init($domain);
               curl_setopt($curlInit,CURLOPT_CONNECTTIMEOUT,10);
               curl_setopt($curlInit,CURLOPT_HEADER,true);
               curl_setopt($curlInit,CURLOPT_NOBODY,true);
               curl_setopt($curlInit,CURLOPT_RETURNTRANSFER,true);

               //get answer
               $response = curl_exec($curlInit);

               curl_close($curlInit);

               if ($response) return true;

               return false;
       }
?>

 

 

در اینجا ما تابع isDomainAvailible را تعریف می‌کنیم که اسم دامنه ی مد نظر را به عنوان ورودی می گیرد حال لازم است تا ما اسم دامنه ی وارد شده را با استفاده از FILTER_VALIDATE_URI اعتبار سنجی کنیم که به شکل درست وارد شده باشد.

قبل از توضیح ادامه ی کد لازم است این را بگویم که curl یک دستوری در PHP است که بوسیله ی آن میتوان یک درخواست HTTP را ایجاد کرد.

با استفاده از دستور curl_init یک درخواست HTTP را ایجاد می کنیم سپس از طریق curl_setopt مقادیر درخواست HTTP خود از قبیل HEADER و BODY درخواست را تنظیم می‌کنیم و از طریق curl_exe آن را به مرورگر ارسال می‌کنیم حالا اگر به درخواست HTTP ما پاسخی ارسال شود در متغییر response ریخته می شود که اگر این متغییر مقداری نداشت یعنی آدرس url وارد شده توسط ما وجود نداشته است که به آن درخواست پاسخی بدهد و اگر هم مقدار داشت به این معنی است که آن آدرس مد نظر ما وجود دارد. در آخر کار لازم است تا درخواست HTTP مذکور را با استفاده از curl_close ببندیم.

برچسب ها:
مقالات مشابه