PHPにて短縮URLを展開させて、元のURLを取得する方法
短縮されたURLを展開させて、元のURLを取得したいというケースがあった。方法を調べたところPHPにて対応できる模様。以下に対応方法をメモ。
対応方法
ソースコード
<?php //短縮URL $url = 'https://x.gd/8GHUZ'; //ヘッダを取得 $header = get_headers($url, true); //リダイレクト先のURLが存在するかチェック if( isset($header['Location']) ){ $location = $header['Location']; //複数存在する(短縮URLを更に短縮させたような)場合は最後のリダイレクト先を取得 if( is_array($location) ){ $location = end($location); } }else{ //リダイレクト先が無い(短縮URLではない)場合は元のURLを設定 $location = $url; } echo $location; //https://taitan916.info/blog/
リファレンス
get_headers
https://www.php.net/manual/ja/function.get-headers.php
end
https://www.php.net/manual/ja/function.end.php
Location
https://developer.mozilla.org/ja/docs/Web/HTTP/Headers/Location
関連記事
-
-
PHPでxmlのpubDateを見やすい形に整形する
PHPでsimplexml_load_file関数とかを使ってデータを取得した際 ...
-
-
Stripeでキャンセル処理を行う際に「$config must be a string ~」エラーが出る場合の対応方法
Stripeにて先日メモした内容でキャンセル(返金)処理をしようとしたところ1件 ...
-
-
PHPのintval
intvalという見たこと無い関数があったのでメモ。 ■リファレンス http: ...
-
-
imgタグのsrc属性のURLにPHPでタイムスタンプを付与しキャッシュ対策する方法
imgタグで画像を表示する際、画像を書き換えても同じものが表示されるというケース ...
-
-
PHPからDBX Platformを利用してDropbox内のファイルを削除する方法
以前にPHPからDropboxのファイル一覧のデータ(ファイル名や更新日時等)を ...