首页 > 编程 > PHP > 正文

php变量作用域的用法介绍(代码)

2020-03-22 16:22:09
字体:
来源:转载
供稿:网友
本篇文章给大家带来的内容是关于html' target='_blank'>php变量作用域的用法介绍(代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

以下为 PHP 中的各种变量在底层实现中是如何存储的。

变量:

$temp = temp $temp2 = $temp;// keyp *executor_globals.symbol_table.arData[7].key.val@4p *executor_globals.symbol_table.arData[8].key.val@4// valuep *executor_globals.symbol_table.arData[7].val.value.zv.value.str.val@4p *executor_globals.symbol_table.arData[8].val.value.zv.value.str.val@4
// valuep *executor_globals.symbol_table.arData[7].val.value.zv.value.ref.val.value.str.val@4p *executor_globals.symbol_table.arData[8].val.value.zv.value.ref.val.value.str.val@4

方法:

function test(){ $temp = temp  static $test = test // function namep *executor_globals.function_table.arData[924].key.val@4// function bodyp *executor_globals.function_table.arData[924].val.value.func// function temp variable keyp *executor_globals.function_table.arData[924].val.value.func.op_array.vars[0].val@4// function temp variable valuep *executor_globals.function_table.arData[924].val.value.func.op_array.literals[0].value.str.val@4// function static variable keyp *executor_globals.function_table.arData[924].val.value.func.op_array.static_variables.arData[0].key.val@2// function static variable valuep *executor_globals.function_table.arData[924].val.value.func.op_array.static_variables.arData[0].val.value.ref.val.value.str.val@4

常量:

// phpdefine( AA , aa // keyp *executor_globals.zend_constants.arData[849].key.val@2// valuep *executor_globals.zend_constants.arData[849].val.value.zv.value.str.val@2

class

// phpclass Apple{ public $a = avalue  public $a2 = avalue  public static $b = bvalue  public static $b2 = bvalue  const E = evalue  const F = fvalue  public function test(){ $c = cvalue  vr_dump($this- a, $c); public static function test2(){ $d = dvalue  vr_dump(self::$b, $d);$obj = new Apple();$obj- test();Apple::test2();// class name 类名保存在class_table的时候的 key 是不区分大小写的,但是类名字本身在 class_entry 中还是有大小写的p *executor_globals.class_table.arData[153].key.val@5 // 小写p *executor_globals.class_table.arData[153].val.value.ce.name.val@5 // 保持原样// class bodyp *executor_globals.class_table.arData[153].val.value.ce// class protetry keyp *executor_globals.class_table.arData[153].val.value.ce.properties_info.arData[0].key.val@2// class protetry valuep *executor_globals.class_table.arData[153].val.value.ce.default_properties_table.value.str[0].val@6// class static protetry valuep *executor_globals.class_table.arData[153].val.value.ce.default_static_members_table.value.str[0].val@6// class constanct namep *executor_globals.class_table.arData[153].val.value.ce.constants_table.arData[0].key// class constanct valuep *executor_globals.class_table.arData[153].val.value.ce.constants_table.arData[0].val.value.zv.value.str.val@6// class function namep *executor_globals.class_table.arData[153].val.value.ce.function_table.arData[0].key.val@4// class function bodyp *executor_globals.class_table.arData[153].val.value.ce.function_table.arData[0].val.value.func// class function temp variablep *executor_globals.class_table.arData[153].val.value.ce.function_table.arData[0].val.value.func.op_array.vars[0].val

以上就是php变量作用域的用法介绍(代码)的详细内容,PHP教程

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表