Heim >Backend-Entwicklung >PHP-Tutorial >php短址转换实现

php短址转换实现

WBOY
WBOYOriginal
2016-06-23 13:39:57851Durchsuche

从昨天下午到现在 推翻了一个又一个的信息存储方案,从mysql到加上内存不受限制的file_get_contents,再到格式化输入的fscanf,最终选择了比较成熟稳定的读取ini的方法。

允许转载,转载须注明出处。

整个主程序只有两个文件 zipurl.php、index.php

zipurl.php:

<?php #此文件用于转换url#整理urlfunction 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;}#存号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['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="输入你想转换的网址">      </fieldset>      <div><button type="submit" class="am-btn am-btn-primary am-btn-block">转换</button></div>    </form>  </div>
</div>
index.php

<?php #查号 #短址访问部分function readfiles($strs){	$array=parse_ini_file("url.tmp",true);	var_dump($array);	return $array[$strs];}function main(){	#转到模块	if($str=$_SERVER['QUERY_STRING'])	echo '<script language="javascript">location.href="'.readfiles($str).'";';}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="输入你想转换的网址">      </fieldset>      <button type="submit" class="am-btn am-btn-primary am-btn-block">转换</button>    </form>  </div>
</div>

临时文件url.tmp

aaaaa=http://baidu.com




Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn