网站首页 > 网络编程教程 > PHP教程 > PHP中hash table有哪些特点

PHP中hash table有哪些特点

  • 作者:互联网
  • 时间:2022-05-20 09:16:08

1、特点

支持典型的key->value查询。

可以作为数组使用。

添加、删除节点是O(1)的复杂性。

key支持混合类型:同时存在相关数组索引数组。

Value支持混合类型。

支持线性遍历:例如foreach。

2、实例

typedef struct _hashtable {
     uint nTableSize; //表长度,并非元素个数
     uint nTableMask;//表的掩码,始终等于nTableSize-1
     uint nNumOfElements;//存储的元素个数
     ulong nNextFreeElement;//指向下一个空的元素位置
     Bucket *pInternalPointer;//foreach循环时,用来记录当前遍历到的元素位置
     Bucket *pListHead;
     Bucket *pListTail;
     Bucket **arBuckets;//存储的元素数组
     dtor_func_t pDestructor;//析构函数
     zend_bool persistent;//是否持久保存。从这可以发现,PHP数组是可以实现持久保存在内存中的,而无需每次请求都重新加载。
     unsigned char nApplyCount;
     zend_bool bApplyProtection;
} HashTable;

以上就是PHP中hash table的特点,希望对大家有所帮助。

上一篇: PHP中Zval是什么

下一篇: PHP核心架构是什么