首頁 >後端開發 >php教程 >php基於字串轉換短址的方法

php基於字串轉換短址的方法

墨辰丷
墨辰丷原創
2018-06-13 09:55:501492瀏覽

這篇文章主要介紹了php短址轉換實現方法,涉及網址及字符串的操作技巧,具有一定參考借鑒價值,需要的朋友可以參考下

本文實例講述了php短址轉換實作方法。

具體分析如下:

從昨天下午到現在推翻了一個又一個的資訊儲存方案,從mysql到加上記憶體不受限制的file_get_contents,再到格式化輸入的fscanf ,最終選擇了比較成熟穩定的讀取ini的方法。

整個主程式只有兩個檔案zipurl.php、index.php

zipurl.php檔案如下:

#程式碼如下:

<?php   
//此文件用于转换url  
//整理url  
function dealurl($url)  
{  
    if($url[4]!=&#39;:&#39;)$url=&#39;http://&#39;.$url;  
    return $url;  
}  
function ranum()  
{  
$str="0123456789abcdefghijklmnopqrstuvwxyz";  
$tmp=$str[mt_rand(0,35)].$str[mt_rand(0,35)].$str[mt_rand(0,35)].$str[mt_rand(0,35)].$str[mt_rand(0,35)];  
return $tmp;  
}  
//存号  
function zipurl($urls)  
{  
    //查号去重  
    $handle = fopen("url.tmp","r+");  
    $array=parse_ini_file("url.tmp",true);  
    if(array_search($urls, $array))return array_search($urls, $array);  
    $num=ranum();  
    fprintf($handle,"%s=%s\r",$num,$urls);  
    fclose($handle);  
    return $num;  
}  
function main()  
{  
    if($url=$_GET[&#39;url&#39;])  
    {  
        $url=dealurl($url);  
        $url=zipurl($url);  
        echo "http://localhost/?".$url;  
    }  
}  
main();  
?>  
<meta charset="utf-8">  
<title>ZIP your URL</title>  
<link rel="stylesheet" href="assets/css/amazeui.min.css">  
<p class="am-g">  
  <p class=" col-md-8 col-sm-centered">  
    <form class="am-form" action="zipurl.php" method="get">  
      <fieldset class="am-form-set">  
        <input type="text" id="url" name="url" placeholder="输入你想转换的网址">  
      </fieldset>  
      <p><button type="submit" class="am-btn am-btn-primary am-btn-block">转换</button></p>  
    </form>  
  </p>  
</p>

index. php檔案如下:

程式碼如下:

<?php  
//查号   
//短址访问部分  
function readfiles($strs)  
{  
    $array=parse_ini_file("url.tmp",true);  
    var_dump($array);  
    return $array[$strs];  
}  
function main()  
{  
    //转到模块  
    if($str=$_SERVER[&#39;QUERY_STRING&#39;])  
    echo &#39;<script language="javascript">location.href="&#39;.readfiles($str).&#39;";</script>&#39;;  
}  
main();  
//统计部分  
?>  
<meta charset="utf-8">  
<title>ZIP your URL</title>  
<link rel="stylesheet" href="assets/css/amazeui.min.css">  
<p class="am-g">  
  <p class=" col-md-8 col-sm-centered">  
    <form class="am-form" action="zipurl.php" method="get">  
      <fieldset class="am-form-set">  
        <input type="text" id="url" name="url" placeholder="输入你想转换的网址">  
      </fieldset>  
      <button type="submit" class="am-btn am-btn-primary am-btn-block">转换</button>  
    </form>  
  </p>  
</p>

暫存檔案url.tmp:
aaaaa=http://baidu.com

運行效果如下圖所示:

總結:以上就是這篇文章的全部內容,希望能對大家的學習有所幫助。

相關推薦:

php實作將物件儲存到Session中

簡述php取得檔案大小與建立時間的方法

PHP框架laravel安裝與設定說明

以上是php基於字串轉換短址的方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn