昨日作成したものに機能追加。
httpコードを取得して、ページが存在するかどうかを確認する処理を入れてみた。
何かに使えるかなぁ、と
※確認:php 7
(2016/12/26:タイトルを修正, 配列の宣言を array() → [] へ修正)
<?php class curl_lib { const HTTP_CODE_MOVED_PERMANENTLY = 301 ; const HTTP_CODE_NOT_FOUND = 404 ; /** * URL を指定して伝送に関するデータを取得する * @param String $in_url : 取得したい URL * @return array $curl_data : 取得データ / 取得失敗時は false */ public function func_curl($in_url) { $ch = curl_init($in_url) ; curl_setopt_array($ch, [ CURLOPT_HEADER => true , CURLOPT_RETURNTRANSFER => true ] ) ; $res = curl_exec($ch) ; $curl_data = curl_getinfo($ch) ; curl_close($ch) ; return $curl_data ; } /** * 指定した URL 先が存在するか調べる * 接続できない場合も NG なる * @see $this->func_curl * @param String $check_url : チェックする URL * @return boolean : チェック結果 : true = OK / false = NG */ public function check_http_code($check_url) { $res = $this->func_curl($check_url) ; if($res !== false && isset($res['http_code']) && $res['http_code'] != 0 && $res['http_code'] != self::HTTP_CODE_MOVED_PERMANENTLY && $res['http_code'] != self::HTTP_CODE_NOT_FOUND) { return true ; } return false ; } }