Smarty鍙互鍦ㄦā鏉垮唴浣跨敤PHP鐨 瀵硅薄銆
Note
褰撲綘璧嬪/娉ㄥ唽涓涓璞″埌妯℃澘浣跨敤鏃讹紝璇风‘淇濆湪妯℃澘鍐呬娇鐢ㄧ殑灞炴у拰鏂规硶閮芥槸浠呬负浜嗘樉绀恒 瑕侀氳繃瀵硅薄鍦ㄦā鏉夸腑宓屽叆搴旂敤閫昏緫鏄緢瀹规槗鐨勪簨鎯咃紝浣嗘槸杩欐牱浼氬鑷磋緝宸殑璁捐鑰屼笖闅句互绠$悊銆 璇峰弬瑙丼marty缃戠珯涓婃渶浣冲疄璺电殑鏂囩珷銆
杩欓噷鏈変袱涓柟娉曟潵浣跨敤瀵硅薄锛
绗竴绉嶆柟娉曠湅璧锋潵璇硶缁撴瀯鏇村ソ銆傝屼笖涔熸洿瀹夊叏锛屽洜涓烘敞鍐屽璞¢渶瑕侀檺瀹氬叾鏂规硶鎴栬呭彉閲忕殑浣跨敤銆 鐒惰岋紝 娉ㄥ唽瀵硅薄涓嶈兘杩涜寰幆锛屾垨鑰呰祴鍊煎埌瀵硅薄鏁扮粍锛岀瓑绛夈 璇锋牴鎹綘鐨勯渶瑕佹潵閫夋嫨鐢ㄥ摢绉嶆柟娉曪紝浣嗘槸棣栧厛灏藉彲鑳戒繚璇佹ā鏉胯娉曠殑绠娲併
濡傛灉寮鍚簡瀹夊叏鏈哄埗锛岀鏈夋柟娉曞拰鍑芥暟閮戒笉鑳戒娇鐢(浠'_'寮澶)銆 濡傛灉鏈夌浉鍚屽悕绉扮殑鏂规硶鎴栧睘鎬э紝閭d箞璇ユ柟娉曞皢浼氳浣跨敤銆
浣犲彲浠ラ氳繃灏嗘柟娉曟垨灞炴у垪鍦ㄦ敞鍐屽嚱鏁扮殑绗笁涓暟缁勫弬鏁板唴锛屾潵瀵瑰畠浠繘琛岄檺瀹氥
榛樿鎯呭喌涓嬶紝浼犻掑弬鏁扮粰瀵硅薄鐨勬柟寮忓拰浼犻掔粰
鑷畾涔夊嚱鏁鐨勬柟寮忎竴鏍枫
鍏宠仈鏁扮粍浣滀负绗竴涓弬鏁帮紝绗簩涓弬鏁版槸Smarty瀵硅薄銆
濡傛灉浣犻渶瑕佷竴娆′竴涓湴浼犻掑弬鏁帮紝灏卞儚浼犵粺绫荤殑鍙傛暟浼犻掍竴鏍凤紝
閭d箞灏辫缃鍥涗釜鍙傛暟涓FALSE
銆
绗簲涓弬鏁版槸鍙夌殑锛屼粎鍦format
涓TRUE
鐨勬椂鍊欑敓鏁堬紝
鑰屼笖鍖呭惈浜嗕竴涓柟娉曠殑鍒楄〃锛岄渶瑕佹寜鍖哄潡鐨勬柟寮忎娇鐢ㄣ
鎰忓懗鐫杩欎簺鏂规硶鍦ㄦā鏉垮唴鏈変釜鍏抽棴鐨勬爣绛(濡傦細{foobar->meth2}...{/foobar->meth2}
)
鑰屼笖瀹冧滑鐨勫弬鏁板繀椤绘寜
鍖哄潡鎻掍欢鍑芥暟
涓鏍凤細
瀹冧滑鏈夊洓涓弬鏁帮細
$params
,
$content
,
$smarty
鍜
&$repeat
鑰屼笖瀹冧滑鏈夌潃鍜屽尯鍧楁彃浠跺嚱鏁扮浉鍚岀殑琛屼负銆
Example聽17.9.聽娉ㄥ唽鎴栬祴鍊间竴涓璞
<?php // 绫诲畾涔 class My_Object { function meth1($params, $smarty_obj) { return 'this is my meth1'; } } // 娉ㄥ唽瀵硅薄(寮曠敤浼犻) $smarty->registerObject('foobar',$myobj); // 鍒楀嚭鎴戜滑闇瑕侀檺瀹氱殑閮ㄥ垎鏂规硶鍜屽睘鎬 $smarty->registerObject('foobar',$myobj,array('meth1','meth2','prop1')); // 濡傛灉浣犻渶瑕佺敤浼犵粺鐨勫璞″弬鏁版牸寮忥紝璁剧疆绗洓涓弬鏁颁负false $smarty->registerObject('foobar',$myobj,null,false); // 杩樺彲浠ョ敤assign_by_ref灏嗗璞¤祴鍊肩粰妯℃澘 $smarty->assign_by_ref('myobj', $myobj); $smarty->display('index.tpl'); ?>
鐒跺悗鍦index.tpl
鍐呬娇鐢ㄥ璞★細
{* 璁块棶娉ㄥ唽鐨勫璞 *} {foobar->meth1 p1='foo' p2=$bar} {* 鍚屾牱鍙互璧嬪肩粰output *} {foobar->meth1 p1='foo' p2=$bar assign='output'} the output was {$output} {* 璁块棶璧嬪肩殑瀵硅薄 *} {$myobj->meth1('foo',$bar)}
鍙傝 registerObject()
鍜
assign()
.