PHP自定义函数实现assign()数组分配到模板及extract()变量分配到模板功能示例

本文实例讲述了PHP自定义函数实现assign()数组分配到模板及extract()变量分配到模板功能。分享给大家供大家参考,具体如下:

这里模拟tp框架模板变量分配与赋值操作。

extract($arr);  //extract  的作用:从数组中将变量导入到当前的符号表,键做变量,值做值!
compact();  //  — 建立一个数组,包括变量名和它们的值

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
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();

更多关于PHP相关内容感兴趣的读者可查看本站专题:《php面向对象程序设计入门教程》、《PHP数组(Array)操作技巧大全》、《PHP基本语法入门教程》、《PHP运算与运算符用法总结》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》

希望本文所述对大家PHP程序设计有所帮助。

您可能感兴趣的文章:

  • ThinkPHP模板中数组循环实例
  • ThinkPHP模板Volist标签嵌套循环输出多维数组的方法
  • ThinkPHP模板之变量输出、自定义函数与判断语句用法
  • PHP 替换模板变量实现步骤
  • PHP模板引擎Smarty中变量的使用方法示例
  • PHP模板引擎Smarty之配置文件在模板变量中的使用方法示例
  • PHP模板引擎Smarty中的保留变量用法分析
  • PHP模板引擎Smarty自定义变量调解器用法
  • PHP模板引擎Smarty内置变量调解器用法详解
  • thinkPHP控制器变量在模板中的显示方法示例

原文链接:https://blog.csdn.net/u010861514/article/details/40869179

你可能感兴趣的:(PHP自定义函数实现assign()数组分配到模板及extract()变量分配到模板功能示例)