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","[email protected]", 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>















郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。