php Smartyを使用する関連注意事項と変数にアクセスするいくつかの方法
$tpl=new Smarty()//新しいsmartyオブジェクトを作成します。私はSmarty-3.1.6バージョンの1を使用しています。smartyテンプレートのパスを設定します。tpl->setTemplateDir()デフォルトではtemplates 2です。smartyテンプレートコンパイルパスを設定します。tpl->setCompleDir()デフォルトはtemplates_です。c 3.smartyテンプレートエンジンの左右のセパレータを設定し、
$tpl->left_delimiter="<{};
$tpl->Right_delimiter="""";
デフォルトの場合:public$left_delimiter=「{」////smartyソースコード
public$right_delimiter="""//"smartyソースコード
なぜ私たちはこれらのセパレータを変更しますか?
以前のバージョンのsmartyエンジンのテンプレートでは、エラーが発生し、自動的に認識できなくなります。例えば:またはjavascriptの中には、と同じディレクトリですが、しかし、は間違った書き方です。この場合、smartyエンジンはdefaultの下で検索するのではなく、Tplディレクトリの下でheaderとfooterを探します。各ディレクトリの下のPHPプログラムにSmartyとSmartyをロードしたいならば、絶対的なディレクトリを使用することができます。7.Smartyテンプレートエンジンで変数にアクセスする方式(テンプレートの変数の前に「$」記号を追加してください)①アクセス配列インデックス配列:$tpl->assign(「arr」、array(「aa」、「bb」、「cc」)$tpl->assign(arr 2、array(「二次元配列一一」、「二次元配列二十二」)、array(「二次元配列二一」、「二次元配列二二二二二」);アクセスインデックス配列:<$arr[0]>、<$arr[0]]>、<{$arr[0]}>アクセス二次元インデックス配列:<{$arr 2[0]]]]]>、<{$arr 2[0]]]}>、<{1]}>関連配列:(.記号を使用してアクセス)アクセス関連配列:<{arr 3.id}、、
$tpl->left_delimiter="<{};
$tpl->Right_delimiter="""";
デフォルトの場合:public$left_delimiter=「{」////smartyソースコード
public$right_delimiter="""//"smartyソースコード
なぜ私たちはこれらのセパレータを変更しますか?
以前のバージョンのsmartyエンジンのテンプレートでは、エラーが発生し、自動的に認識できなくなります。例えば:またはjavascriptの中には
<script>
function show(){
alert("smarty");
}
</script>
という二つのケースがあります。「左右の括弧」があります。smartyエンジンがエラーを報告しました。初期化操作は外部でもう一つの初期化操作のphpファイルを作成できます。例えば、smarty.ini.php。その後、phpファイルに含めると
<?php
include "../Smarty3.1.6/libs/Smarty.class.php";
$tpl=new Smarty();
$tpl->setTemplateDir("./Tpl");
$tpl->setTemplateDir("./Compile");
$tpl->left_delimiter="<{";
$tpl->right_delimiter="}>";
?>
.smartyテンプレートエンジンのdisplay関数またはinclude他のテンプレートを使用すると、smartyオブジェクトで指定されたテンプレートディレクトリ(例えば、Tplディレクトリ、デフォルトはtemplatesディレクトリ)がベースディレクトリとなります。①テンプレートディレクトリは、Tplであり、このディレクトリには多くのテンプレートが保存されています。default、green、redテンプレートがあり、defaultテンプレートディレクトリの下には多くのテンプレートファイル(index.tpl、header.tpl、footer.tpl)があります。このときdisplayの正しい使い方は、$tpl->display(「default/indedexpl.display.」つまり、ベースディレクトリのdefaultテンプレートディレクトリ②テンプレートファイル(index.tpl)に他のテンプレートファイルが含まれている場合(例えば、header.tpl、footer.tpl)、includeの正確な書き方は、
class human{
private $sex;
private $name;
private $age;
public function __construct($s,$n,$a){
$this->sex=$s;
$this->name=$n;
$this->age=$a;
}
public function print_info(){
return $this->sex."--".$this->name."--".$this->age;
}
}
$tpl->assign("student",new human("male","MarcoFly",22));
テンプレート内のオブジェクトに値を付けます。info()>>8.Smartyテンプレートエンジンの数学演算は、テンプレート変数に変数の値を付与するために適用できます。$tpl->assign("num 2",5.5);テンプレート変数出力<{$num 1}/結果10<{$num 2}//結果5.5<{$num 1+$num 2}}//結果15.5<{$num 1+$num 2*$num 2/$num 1}/結果13.025オリジナル記事転載は、WEB開発_を明記してください。小飛び