php短址轉(zhuǎn)換實(shí)現(xiàn)方法_PHP教程
推薦:php中mysql連接方式PDO使用詳解本文主要詳細(xì)介紹了PHP中mysql的連接方式PDO的各種使用方法,算是個(gè)人的一個(gè)小結(jié),如有遺漏還請(qǐng)告之,有需要的小伙伴來參考下吧。 PDO常用方法: PDO::query()主要用于有記錄結(jié)果返回的操作(PDOStatement),特別是select操作。 PDO::exec()主要是針對(duì)沒有結(jié)果集合返
這篇文章主要介紹了php短址轉(zhuǎn)換實(shí)現(xiàn)方法,涉及網(wǎng)址及字符串的操作技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
本文實(shí)例講述了php短址轉(zhuǎn)換實(shí)現(xiàn)方法。分享給大家供大家參考。具體分析如下:
從昨天下午到現(xiàn)在 推翻了一個(gè)又一個(gè)的信息存儲(chǔ)方案,從mysql到加上內(nèi)存不受限制的file_get_contents,再到格式化輸入的fscanf,最終選擇了比較成熟穩(wěn)定的讀取ini的方法。
整個(gè)主程序只有兩個(gè)文件 zipurl.php、index.php
zipurl.php文件如下:
代碼如下: <?php//此文件用于轉(zhuǎn)換url
//整理url
function dealurl($url)
{
if($url[4]!=':')$url='http://'.$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;
}
//存號(hào)
function zipurl($urls)
{
//查號(hào)去重
$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['url'])
{
$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">
<div class="am-g">
<div 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="輸入你想轉(zhuǎn)換的網(wǎng)址">
</fieldset>
<div><button type="submit" class="am-btn am-btn-primary am-btn-block">轉(zhuǎn)換</button></div>
</form>
</div>
</div>
index.php文件如下:
代碼如下: <?php//查號(hào)
//短址訪問部分
function readfiles($strs)
{
$array=parse_ini_file("url.tmp",true);
var_dump($array);
return $array[$strs];
}
function main()
{
//轉(zhuǎn)到模塊
if($str=$_SERVER['QUERY_STRING'])
echo '<script language="javascript">location.href="'.readfiles($str).'";</script>';
}
main();
//統(tǒng)計(jì)部分
?>
<meta charset="utf-8">
<title>ZIP your URL</title>
<link rel="stylesheet" href="assets/css/amazeui.min.css">
<div class="am-g">
<div 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="輸入你想轉(zhuǎn)換的網(wǎng)址">
</fieldset>
<button type="submit" class="am-btn am-btn-primary am-btn-block">轉(zhuǎn)換</button>
</form>
</div>
</div>
臨時(shí)文件url.tmp:
aaaaa=http://baidu.com
運(yùn)行效果如下圖所示:

希望本文所述對(duì)大家的php程序設(shè)計(jì)有所幫助。
分享:php中數(shù)據(jù)庫(kù)連接方式pdo和mysqli對(duì)比分析這篇文章主要介紹了php中數(shù)據(jù)庫(kù)連接方式pdo和mysqli從各個(gè)方面進(jìn)行了對(duì)比分析,十分全面,這里推薦給大家,有需要的小伙伴來參考下。 1)總的比較 2 連接方式 先來看下兩者連接數(shù)據(jù)庫(kù)的方式: 代碼如下: // PDO $pdo = new PDO(mysql:host=localhost;dbname=database,
- php中mysql連接方式PDO使用詳解
- php中數(shù)據(jù)庫(kù)連接方式pdo和mysqli對(duì)比分析
- Mac OS下配置PHP+MySql環(huán)境
- php禁止某ip或ip地址段訪問的方法
- PHP兩種快速排序算法實(shí)例
- CentOS下PHP安裝Oracle擴(kuò)展
- PHP批量查詢WordPress留言者E-mail地址實(shí)現(xiàn)方法
- php魔術(shù)函數(shù)__call()用法實(shí)例分析
- PHP中使用file_get_contents post數(shù)據(jù)代碼例子
- PHP網(wǎng)站開發(fā)中常用的8個(gè)小技巧
- 用php守護(hù)另一個(gè)php進(jìn)程的例子
- cakephp打印sql語(yǔ)句的方法
- 相關(guān)鏈接:
- 教程說明:
PHP教程-php短址轉(zhuǎn)換實(shí)現(xiàn)方法
。