`
kefeng
  • 浏览: 15555 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
文章分类
社区版块
存档分类
最新评论

php之Smarty基本语法和三大变量

 
阅读更多

在Smarty模板中主要都是以变量为主,下面就是有关Smarty的三大变量以及一些普通的用法


首先在根目录下建立要用到的文件基本和上一次一样,configs是配置文件夹




一、从PHP中分配的变量

$smarty->assign()

$smarty->display()


首先先编写初始化的php代码,和上一篇的 conn.inc.php 一样

<?php
    include "init.inc.php";
    //assign方法
    $smarty->assign("title","11111111");
    $smarty->assign("content","2222222222");
    //分配一个关联数组,用的较少
    $smarty->assign(array("author"=>"何栘烽","time"=>date("Y-m-d H:i:s")));

    //注册函数
    $smarty->registerPlugin("function","myfun","test");  //注册插件,将test函数注册成myfun
    function test($args){
    	//args=array("size"=>7, "color"="yellow", "num"=>5, "connect"=>"3333333")
    	//循环遍历出
    	$str="";
    	for($i=0; $i<$args["num"]; $i++){
    		$str.='<font color="'.$args['color'].'" size="'.$args['size'].'">'.$args["content"].'</font><br>';
    	}
    	return $str;
    }
    //数组
    $smarty->assign("contacts",array("0575-1241243","kefeng.hyf@gmail.com", array("243214124", "45345")));
    //对象
    class Person{
    	public $name="kefeng";
    	function say(){
    		return $this->name."hhhhhhhh";
    	}
    }
    $smarty->assign("p",new Person());
    $smarty->display("demo.html");  //显示的模板

demo.html:

<html>
	<head>
		<title><{ $title }></title>
		<style>
		body {color:red;}
		</style>
	</head>
	<body>
		   content:<{$content}><br>
           content:<{$content}><br>
		   content:<{$content}><br>
		   author:<{$author}><br>
		   time:<{$time}><br>
		   time:<{myfun()}><br>
		   time:<{date("Y-m-d")}><br>
			<img src="img.gif" /><br>
			<{myfun size="7" color="yellow" num="5" content="3333333"}>
			<{$contacts[0]}><br>
			<{$contacts[2][0]}><br>
			<br>
			<{$p->name}><br>
			<{$p->say()}><br>
			<br>
		</script>
	</body>
</html>






二、从配置文件中读取变量

这里需要创一个 configs 文件夹,里面配置文件 test.conf

test.conf:

bodycolor=#3e3e3e
bodybgcolor=yellow
border=10
align=center
width=800
bgcolor=gray

[index]
one=11111

[list]
two=22222

[content]
three=33333

在demo.php 中开启session

<?php
    //session_start();
    include "init.inc.php";

    $_SESSION["username"]="admin";

    $smarty->display("demo.html");  //显示的模板

注意的是:加载配置文件:<{config_load "test.conf"}>
读取:<{#内容#}>
加载区域文件要用到第二个参数:<{config_load "test.conf" section="index"}>


demo.html :中,这里写一些头文件,以及加载代码

<html>
  <head>
    <title><{ $title }></title>
    <style>
    body {color:red;}
    </style>
  </head>
  <{config_load "test.conf" section="index"}>
  <body text="<{ #bodycolor# }>" bgcolor="<{#bodycolor#}>"> 
   .......
   .......
  <{#one#}><br>
  <{#two#}><br>
  <{#three#}><br>
   ......
   </body>
</html><span style="white-space:pre">	</span>  


三、保留变量

主要有: $_GET
$_POST
$_SESSION
$_SERVER
$_ENV
<{$smarty()}>

 <p>
<{$smarty.session.username}><br>
<{$smarty.now}><br>
<{$smarty.const.ROOT}><br>
<{$smarty.const.M_PI}><br>
<{$smarty.current_dir}><br>















版权声明:本文为博主原创文章,未经博主允许不得转载。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics