学习了smarty变量的用法以及实现效果,大家请看下面几个文件。
模版文件 a.html
模版文件中的变量分类<br>
一、由php中分配过来的变量<br>
<br>
<{ * 这是smarty的注释信息 *}>
<!--这是html注释-->
<br>
这是从php分配过来的标量类型的变量<br>
<{$title}>
<br>
<{$title1}>
<br>
<{$title2}>
<br>
从数据库获取变量<br>
<!--<br><br><br><br><br>
<{$name}><br>
<{$username}><br>
<{$pass}><br>
<{*$result['id']*}><br>-->
<{$row[0]}><br>
<{$row[1]}><br>
<{$row[2]}><br>
<br><br>
<{$array1[0]}><br>
<{$array1[1]}><br>
<{$array1[2]}><br>
<br>
<{$array2[0][0]}><br>
<{$array2[0][1]}><br>
<{$array2[1][0]}><br>
<{$array2[1][1]}><br>
<br><br><br><br><br>
<{$array3.one}><br>
<{$array3.two}><br>
<br><br>
<{$array4.one[0]}><br>
<{$array4[0].two}><br>
<br><br>
<{$array5[0].one}><br>
<{$array5[0].two[0]}><br>
<{$array5[1].three}><br>
<br><br>
<{$person->say()}><br>
<{$person->name}><br>
<{$person->age}><br>
<br><br>
<{$num1}><br>
<{$num2}><br>
<{$num1+$num2}><br>
执行文件b.php
<?php
include("./init.inc.php");
$a=10;
$tpl->assign("title","this is php various");
$tpl->assign("title1","$a");
$tpl->assign("title2","true");
//从数据库lianxi,表user获取
//连接数据库使用内置类mysqli
//不需要include(require)。直接用
//php.ini开启extension=php_mysqli.dll,重启apace
//mysqli类:连接
//第一步:连接数据库
$mysqli = new mysqli("localhost","root","","lianxi");
//执行SQL命令
//insert delete update:返回影响的行数
//select:返回结果集
//mysql_query
//$mysqli->query()
//mysqli_result类
//结果集对象,创建该对象不能newmysqli_result,而是通过调用mysqli的query方法直接返回结果集对象
$result = $mysqli->query("select * from user");
//第三步:使用该对象获取结果集中的(关联、索引)数组
//mysql_fetch_array(assoc row )
//$result->fetch_assoc (row)
//索引数组分配
$row = $result->fetch_row();
print_r($row);
//关联数组分配
//$row = $result->fetch_assoc();
//print_r($row);
//user字段包括id username password
//$tpl->assign("name",$row['id']);
//$tpl->assign("username",$row['username']);
//$tpl->assign("pass",$row['password']);
//所以数组可以一次性分配
$tpl->assign("row",$row);
//自定义数组
$tpl->assign("array1",array("1","2","3"));//一维索引数组
$tpl->assign("array2",array(array("a","b"),array("c","d")));
//关联数组
$tpl->assign("array3",array("one"=>"one","two"=>"two"));
$tpl->assign("array4",array("one"=>array("aa"),array("two"=>"bb")));
$tpl->assign("array5",array(array("one"=>"aaa","two"=>array("bbb")),array("three"=>"ccc")));
//对象的分配
class Person{
var $name;
var $age;
public function __construct($name,$age){
$this->name = $name;
$this->age = $age;
}
function say(){
return $this->name."的年龄是".$this->age;
}
}
//分配变量
$tpl->assign("person",new Person("as",20));
//运算
$tpl->assign("num1",10);
$tpl->assign("num2",20);
$tpl->display("a.html");
?>
显示效果:
Array ( [0] => 1 [1] => csdn [2] => php ) 模版文件中的变量分类
一、由php中分配过来的变量
这是从php分配过来的标量类型的变量
this is php various
10
true
从数据库获取变量
1
csdn
php
1
2
3
a
b
c
d
one
two
aa
bb
aaa
bbb
ccc
as的年龄是20
as
20
10
20
30
其中需要引进Smarty.class.php模版文件还有init.inc.php(声明文件)。