分析 ecshop 里的$GLOBALS

来源:互联网 发布:数据库中日期格式转换 编辑:程序博客网 时间:2024/04/27 07:27
搞ec二次开发 或研究ec的一些网友 经常在论坛里提到 $GLOBALS['db']; $GLOBALS['ecs'];在那定义的等帖子。 下来就$GLOBALS我说一点:


      想搞明白的朋友 执行 这段代码
  1. <?php
     

  2.  
  3. $test = 'hello world';
     

  4.  
  5. echo $GLOBALS['test'];
     

  6.  
  7. ?>

    浏览器当然会打印出  "hello world"  这就是 $GLOBALS的作用  “就像大部份的结构化程序,有所谓的全局变量与局部变量,PHP  在这方面也是有相同的处理方式。  
    在  PHP  的程序执行时,系统会在内存中保留一块全局变量的区域。实际运用时,可以透过  $GLOBALS["变量名称"]  将需要的变量取出。在用户自定的函数或程序中,就可以用  $GLOBALS  数组取出需要的变量


    在ec里 大家打开 init.php 会看到
  1. $db = new cls_mysql($db_host, $db_user, $db_pass, $db_name);
定义了这样的类  顾名思义 $GLOBALS['db']

以上观点是我个人的理解。