随笔分类 - php内核
摘要:在php中变量类型和值是通过c语言实现的,那php内核具体是怎么实现的呢?HashTable在php内核中广泛被使用,而变量就是存储在hashtable实现的符号表中.当在PHP中调用一个函数或者类时,内核会创建一个新的符号表,这也是为什么在函数中无法使用函数外部定义的变量的原因。(因为他们分属两个符号表,一个当前作用域,一个全局作用域)内核中作用域的定义,PHP的所有 局部变量,全局变量,函数,类的 Hash表 都在这里定义了struct _zend_executor_globals {zval **return_value_ptr_ptr; zval uninitialized_zval;
阅读全文