PHP自定義函數(shù)實(shí)現(xiàn)assign()數(shù)組分配到模板及extract()變量分配到模板功能示例
本文實(shí)例講述了PHP自定義函數(shù)實(shí)現(xiàn)assign()數(shù)組分配到模板及extract()變量分配到模板功能。分享給大家供大家參考,具體如下:
這里模擬tp框架模板變量分配與賦值操作。
extract($arr); //extract 的作用:從數(shù)組中將變量導(dǎo)入到當(dāng)前的符號(hào)表,鍵做變量,值做值!
compact(); // — 建立一個(gè)數(shù)組,包括變量名和它們的值
class base{
public $array;
public $key;
public $val;
public function assign($key,$val){
if(array($val)){
$this->array["$key"] = $val;
}else{
$this->array["$key"] = compact($val);
}
}
public function display($tpl){
$this->assign($this->key,$this->val);
extract($this->array);
if(file_exists($tpl)){ //模板存在就加載文件。
include $tpl;
}
}
}
class indexcontroller extends base{
public function index(){
$arr = array('a'=>'aaaaaaa','b'=>array('a'=>'111111','b'=>'22222','c'=>'3333'),'c'=>'ccccccc','d'=>'dddddd','e'=>'eeeee');
$str = '我是字符串';
$this->assign('arr',$arr);
$this->assign('str',$str);
$this->display('index.html');
}
}
$base = new base;
$base->index();
更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《php面向?qū)ο蟪绦蛟O(shè)計(jì)入門教程》、《PHP數(shù)組(Array)操作技巧大全》、《PHP基本語法入門教程》、《PHP運(yùn)算與運(yùn)算符用法總結(jié)》、《php字符串(string)用法總結(jié)》、《php+mysql數(shù)據(jù)庫操作入門教程》及《php常見數(shù)據(jù)庫操作技巧匯總》
希望本文所述對(duì)大家PHP程序設(shè)計(jì)有所幫助。
相關(guān)文章
php關(guān)鍵字僅替換一次的實(shí)現(xiàn)函數(shù)
這篇文章主要介紹了php實(shí)現(xiàn)每個(gè)關(guān)鍵字僅需要替換一次,有時(shí)一個(gè)項(xiàng)目里面涉及到批量替換關(guān)鍵字的問題,本文針對(duì)控制替換次數(shù)進(jìn)行研究,感興趣的小伙伴們可以參考一下2015-10-10
一個(gè)簡(jiǎn)潔的PHP可逆加密函數(shù)(分享)
本篇文章是對(duì)一個(gè)簡(jiǎn)潔的PHP可逆加密函數(shù)進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-06-06
PHP7擴(kuò)展開發(fā)之基于函數(shù)方式使用lib庫的方法詳解
這篇文章主要介紹了PHP7擴(kuò)展開發(fā)之基于函數(shù)方式使用lib庫的方法,結(jié)合實(shí)例形式分析了PHP7中l(wèi)ib庫擴(kuò)展的封裝與調(diào)用相關(guān)操作技巧,需要的朋友可以參考下2018-01-01
全局記錄程序片段的運(yùn)行時(shí)間 正確找到程序邏輯耗時(shí)多的斷點(diǎn)
全局記錄程序片段的運(yùn)行時(shí)間 正確找到程序邏輯耗時(shí)多的斷點(diǎn),需要的朋友可以參考下。2011-01-01

