smarty简单模板变量输出方法,PHP生成短网址方法

作者: 新金沙平台  发布:2019-07-12

本文简单讲述了Smarty的模板变量输出方法。分享给大家供大家参考,具体如下:

正常的网址带上参数的那种可能会很长,尤其是我们在印刷纸质品如企业宣传册中要印上某个长的url的话非常难看,而且也没几个人会去记这个网址,虽然现在可以用扫二维码的方式打开长网址。但是人们可以使用短网址来实现优美的链接,尤其是有字数限制的应用如微博。

apache虚拟目录设置方法分享,供大家参考,具体内容如下

config.inc.php配置文件如下:

短网址的实现原理就是有一个数据表会配置文件将短网址和实际网址进行对应,当请求某个短网址时,程序跳转到对应的实际网址上去,从而实现网址的访问。

1.开启“虚拟目录配置文件”httpd-vhosts.conf 文件路径:wampbinapacheapache2.4.9confextrahttpd-vhosts.conf
将以下配置:
# Virtual hosts 
# Include conf/extra/httpd-vhosts.conf  
改为:
# Virtual hosts 
Include conf/extra/httpd-vhosts.conf   

include_once('smarty/Smarty.class.php');
$smarty=new Smarty();
$smarty->config_dir="smarty/Config_File.class.php";
$smarty->caching=false; //是否开启缓存
$smarty->template_dir="./templates"; //模板目录
$smarty->compile_dir="./templates_c"; //编译目录
$smarty->cache_dir="./smarty_cache"; //缓存目录
$smarty->left_delimiter="<{";
$smarty->right_delimiter="}>";

方案1:PHP MySQl实现短网址的生成和读取

2.设置虚拟目录可访问 文件路径:wampbinapacheapache2.4.9confextrahttpd-vhosts.conf
将以下配置:

index.php文件如下:

常规的方案我们将生成好的短网址和原网址对应到一张数据表中,然后供读取使用。我们先来看如何生成唯一的短网址。

<Directory /> 
 AllowOverride none 
 Require all denied 
 </Directory> 
include('./config.inc.php');
$title="php测试标题";
$content="smarty练习!";
$newstext[]=array("name"=>"php程序测试","date"=>"2015-08-01");
$newstext[]=array("name"=>"php视频教程","date"=>"2015-08-02");
$newstext[]=array("name"=>"smarty学习","date"=>"2015-08-03");
$row=array("标题","姓名","年龄");
$smarty->assign("title",$title);
$smarty->assign("row",$row);//一个数组传递多个值
$smarty->assign("shownewstext",$newstext);//二维数组传递多个值
$smarty->assign("content",$content);
$smarty->display('index.htm');
//生成短网址 
function code62($x){ 
  $show=''; 
  while($x>0){ 
    $s=$x % 62; 
    if ($s>35){ 
      $s=chr($s 61); 
    }elseif($s>9&&$s<=35){ 
      $s=chr($s 55); 
    } 
    $show.=$s; 
    $x=floor($x/62); 
  } 
  return $show; 
} 
function shorturl($url){ 
  $url=crc32($url); 
  $result=sprintf("%u",$url); 
  return code62($result); 
} 
echo shorturl('//www.jb51.net/'); 
//1EeIv2 

改为:

运行结果如下:

使用以上PHP代码可以生成唯一的6位的短网址,然后我们将生成的短网址与原网址一起写入到MySQL表中,插入数据库的代码这里我就不写了,这是PHP基础。
接着,我们有一个link.php用来接收读取url并实现真实跳转。

<Directory /> 
 AllowOverride none 
 </Directory> 
测试数组:标题 | 姓名 | 年龄 
--------------------------------------------------------------------------------
测试内容为:smarty练习! 
循环新闻内容为:
php程序测试 - 2015-08-01
php视频教程 - 2015-08-02
smarty学习 - 2015-08-03
include_once('connect.php'); //连接数据库 
$url = $_GET['url']; 
if(isset($url) && !empty($url)){ 
  $sql = "select url from shorturl where codeid='$url'"; 
  $query = mysql_query($sql); 
  if($row=mysql_fetch_array($query)){ 
    $real_url = $row['url']; 
    header('Location: ' . $real_url); 
  }else{ 
    header('HTTP/1.0 404 Not Found'); 
    echo 'Unknown link.'; 
  } 
}else{ 
  header('HTTP/1.0 404 Not Found'); 
  echo 'Unknown link.'; 
} 

3.添加虚拟目录  文件路径:wampbinapacheapache2.4.9confextrahttpd-vhosts.conf
 添加虚拟目录

希望本文所述对大家基于Smarty模板的php程序设计有一定帮助作用。

代码中,如果得到短网址对应的真实url,会使用header跳转到真实的页面上去,否则返回404代码。这样我们可以使用如: 来实现短网址访问。

<VirtualHost *:80> 
 ServerAdmin webmaster@web.shop.com 
 DocumentRoot "D:/_HelloWorld/01_MyProjects/06_PHP/01_Web/Product/Source/Shop" 
 ServerName web.shop.com 
 ErrorLog "logs/web.shop.com-error.log" 
 CustomLog "logs/web.shop.com-access.log" common 
</VirtualHost> 

您可能感兴趣的文章:

  • Smarty模板变量调节器用法分析
  • PHP模板引擎Smarty内置变量调解器用法详解
  • PHP模板引擎Smarty自定义变量调解器用法
  • PHP模板引擎Smarty中的保留变量用法分析
  • PHP模板引擎Smarty之配置文件在模板变量中的使用方法示例
  • PHP模板引擎Smarty中变量的使用方法示例
  • smarty模板引擎中变量及变量修饰器用法实例
  • smarty模板中使用get、post、request、cookies、session变量的方法

继续,我们使用URL rewrite即重写功能来实现诸如可以通过地址: 来访问。

4.重启apache
5.在浏览器中输入web.shop.com

本文由新金沙平台发布于新金沙平台,转载请注明出处:smarty简单模板变量输出方法,PHP生成短网址方法

关键词: 新金沙平台 金沙4399js网站

上一篇:没有了
下一篇:没有了