Rumah  >  Artikel  >  pembangunan bahagian belakang  >  PHP kaedah mudah untuk memulihkan URL pendek (pautan pendek) (tersedia untuk ujian)_php kemahiran

PHP kaedah mudah untuk memulihkan URL pendek (pautan pendek) (tersedia untuk ujian)_php kemahiran

WBOY
WBOYasal
2016-05-16 09:00:063255semak imbas

Contoh dalam artikel ini menerangkan cara hanya melaksanakan pemulihan URL pendek dalam PHP. Kongsikan dengan semua orang untuk rujukan anda, butirannya adalah seperti berikut:

Berikut ialah URL pendek http://t.cn/heEHwk Script House sebagai contoh Tangkapan skrin kesan berjalan adalah seperti berikut:

Kod khusus adalah seperti berikut:

<&#63;php
$info1 = '亲!暂不能解析此类短网址。';
$info2 = '亲!网址解析失败,请重试。';
$info3 = '<br/><b><a href="';
$info4 = '" target="_blank">立即访问>></a></b>';
$info5 = '亲!不是短网址或无效。';
function unshort($url)
{
global $info1,$info2,$info3,$info4;
 $curl = curl_init();
 curl_setopt($curl, CURLOPT_URL, $url);
 curl_setopt($curl, CURLOPT_RETURNTRANSFER,1);
 curl_setopt ($curl, CURLOPT_USERAGENT, 'Mozilla/8.0 (compatible; MSIE 8.0; Windows 7');
 curl_setopt($curl, CURLOPT_HEADER, 1);
 curl_setopt($curl, CURLOPT_NOBODY, 0);
 curl_setopt($curl, CURLOPT_TIMEOUT, 15);
 curl_setopt($curl,CURLOPT_ENCODING, 'gzip');
 $data = curl_exec($curl);
 if(!empty($data)){
 $message = curl_getinfo($curl);
  curl_close($curl);
   $status = $message['http_code'];
   if ($status == '301' || $status == '302' ){
    $UrlHeader = (get_headers($url,1));
    $unurl = $UrlHeader[Location];
    if(is_array($unurl)) {
     $unurl = $unurl[0];
     $unurl .=$info3.$unurl.$info4;
     return $unurl;
     }
    else {
    $unurl .=$info3.$unurl.$info4;
    return $unurl;
    }
   }
  return $info1;
 }
 return $info2;
}
function adfunshort($url)
{
global $info3,$info4,$info5;
 $c = file_get_contents($url);
 $p = "/url = '(.*)';/isU";
 preg_match($p, $c, $content);
 $unurl = $content[1];
 if($unurl == '') {
  return $info5;
 }
 else {
  $unurl .=$info3.$unurl.$info4;
  return $unurl;
 }
}
&#63;>
<form action="" method="post">
短网址:<input type="text" name="turl" class="inurl" size="26" />
<input type="hidden" name="url_done" value="done" />
<input type="submit" value="提交" class="suburl" />
</form>
<div id="trurl">
<&#63;php
$turl = $_POST['turl']&#63;$_POST['turl']:"";
$url_done= $_POST['url_done']&#63;$_POST['url_done']:"";
if ($url_done == 'done'){
$http = substr($turl,0,7);
 if ($http != 'http://' && $http != 'https:/'){
  $turl = 'http://'.$turl;
  }
  $tturl = substr($turl,0,11);
  if ($tturl == 'http://adf.'){
  $longurl = adfunshort($turl);
  }else {
  $longurl = unshort($turl);
 }echo "短网址 ".$turl." 的真实网址为:<br />$longurl ";
}
&#63;>

Selain itu, Tapak ini juga menyediakan alat penjanaan URL pendek, pautan khusus adalah seperti berikut:

http://tools.jb51.net/password/dwzcreate

Untuk lebih banyak kandungan berkaitan PHP, sila lihat topik khas di tapak ini: "Ringkasan kaedah penyulitan PHP", "Ringkasan operasi PHP dan penggunaan operator", " Rangkaian PHP Ringkasan kemahiran pengaturcaraan ", "Pengenalan kepada tutorial sintaks asas PHP ", "Ringkasan kemahiran pengendalian dokumen pejabat PHP (termasuk word, excel, akses, ppt) ", "ringkasan penggunaan tarikh dan masa php", "tutorial pengenalan pengaturcaraan berorientasikan objek php", "ringkasan penggunaan rentetan (rentetan) php ", "tutorial pengenalan operasi pangkalan data php +MySQL " dan " Ringkasan kemahiran operasi pangkalan data PHP biasa "

Saya harap artikel ini akan membantu semua orang dalam pengaturcaraan PHP.

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn