您的位置:首页 > 编程语言 > PHP开发

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

2015-03-21 14:02 495 查看
在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>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: