php短址转换实现方法


Posted in PHP onFebruary 25, 2015

本文实例讲述了php短址转换实现方法。分享给大家供大家参考。具体分析如下:

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

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

zipurl.php文件如下:

<?php   

//此文件用于转换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;  

}  

//存号  

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).'";</script>';  

}  

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

运行效果如下图所示:

php短址转换实现方法

希望本文所述对大家的php程序设计有所帮助。

PHP 相关文章推荐
windows xp下安装pear
Dec 02 PHP
一键删除顽固的空文件夹 软件下载
Jan 26 PHP
PHP编码规范之注释和文件结构说明
Jul 09 PHP
PHP字符串函数系列之nl2br(),在字符串中的每个新行 (\n) 之前插入 HTML 换行符br
Nov 10 PHP
请离开include_once和require_once
Jul 18 PHP
php将textarea数据提交到mysql出现很多空格的解决方法
Dec 19 PHP
PHP查找数值数组中不重复最大和最小的10个数的方法
Apr 20 PHP
php结合web uploader插件实现分片上传文件
May 10 PHP
在laravel中使用Symfony的Crawler组件分析HTML
Jun 19 PHP
php实现微信模板消息推送
Mar 30 PHP
在laravel中使用with实现动态添加where条件
Oct 10 PHP
PHP基于进程控制函数实现多线程
Dec 09 PHP
php中mysql连接方式PDO使用详解
Feb 25 #PHP
php中数据库连接方式pdo和mysqli对比分析
Feb 25 #PHP
Mac OS下配置PHP+MySql环境
Feb 25 #PHP
php禁止某ip或ip地址段访问的方法
Feb 25 #PHP
php+ajax实时刷新简单实例
Feb 25 #PHP
用php来限制每个ip每天浏览页面数量的实现思路
Feb 24 #PHP
php基于GD库画五星红旗的方法
Feb 24 #PHP
You might like
php生成随机密码自定义函数代码(简单快速)
2014/05/10 PHP
php中将一段数据存到一个txt文件中并显示其内容
2014/08/15 PHP
thinkPHP3.1验证码的简单实现方法
2016/04/22 PHP
基于Laravel(5.4版本)的基本增删改查操作方法
2019/10/11 PHP
PJ Blog修改-禁止复制的代码和方法
2006/10/25 Javascript
javascript利用初始化数据装配模版的实现代码
2010/11/17 Javascript
JavaScript中两个感叹号的作用说明
2011/12/28 Javascript
php对mongodb的扩展(初识如故)
2012/11/11 Javascript
我的Node.js学习之路(四)--单元测试
2014/07/06 Javascript
jquery实现鼠标滑过后动态图片提示效果实例
2015/08/10 Javascript
Javascript基础_嵌入图像的简单实现
2016/06/14 Javascript
JavaScript中this的四个绑定规则总结
2016/09/26 Javascript
nodejs 子进程正确的打开方式
2017/07/03 NodeJs
Node.js自定义实现文件路由功能
2017/09/22 Javascript
JavaScript中var、let、const区别浅析
2018/06/24 Javascript
浅谈关于iview表单验证的问题
2018/09/29 Javascript
详解Angular Forms中自定义ngModel绑定值的方式
2018/12/10 Javascript
Vue.js@2.6.10更新内置错误处机制Fundebug同步支持相应错误监控
2019/05/13 Javascript
jquery获取input输入框中的值
2019/11/13 jQuery
Nuxt.js的路由跳转操作(页面跳转nuxt-link)
2020/11/06 Javascript
浅谈Python中的私有变量
2018/02/28 Python
使用Python设计一个代码统计工具
2018/04/04 Python
推荐10款最受Python开发者欢迎的Python IDE
2018/09/16 Python
Python静态类型检查新工具之pyright 使用指南
2019/04/26 Python
详细介绍pandas的DataFrame的append方法使用
2019/07/31 Python
Python 如何在字符串中插入变量
2020/08/01 Python
Python对excel的基本操作方法
2021/02/18 Python
HTML5 LocalStorage 本地存储详细概括(多图)
2017/08/18 HTML / CSS
沃尔玛加拿大:Walmart.ca
2020/03/02 全球购物
毕业生应聘幼儿园的自荐信
2013/11/20 职场文书
优秀党务工作者事迹材料
2014/05/07 职场文书
公司管理建议书
2015/09/14 职场文书
先进基层党组织主要事迹材料
2015/11/03 职场文书
银行客户经理培训心得体会
2016/01/09 职场文书
你离财务总监还有多远?速览CFO的岗位职责
2019/11/18 职场文书
浅谈 JavaScript 沙箱Sandbox
2021/11/02 Javascript