
1. الميزات
يدعم المفتاح النموذجي->استعلام القيمة.
يمكن استخدامها كمصفوفة.
إضافة وحذف العقد هو تعقيد O(1).
يدعم المفتاح الأنواع المختلطة: توجد مصفوفات فهرس مصفوفة ذات صلة في نفس الوقت.
تدعم القيمة الأنواع المختلطة.
يدعم الاجتياز الخطي: مثل foreach.
2. مثال
بنية typedef _hashtable {
uint nTableSize; // طول الجدول، وليس عدد العناصر uint nTableMask; // قناع الجدول يساوي دائمًا nTableSize-1
uint nNumOfElements; // عدد العناصر المخزنة ulong nNextFreeElement; // يشير إلى موضع العنصر الفارغ التالي Bucket *pInternalPointer; // أثناء حلقة foreach، يتم استخدامه لتسجيل موضع العنصر الذي تم اجتيازه حاليًا Bucket *pListHead;
دلو *pListTail;
دلو **arBuckets;//مصفوفة العناصر المخزنة dtor_func_t pDestructor;//Destructor zend_bool استمرار;//ما إذا كان مستمرًا. من هذا يمكننا أن نجد أنه يمكن الاحتفاظ بمصفوفات PHP في الذاكرة دون إعادة تحميل كل طلب.
غير موقعة شار nApplyCount؛
zend_bool bApplyProtection;
}HashTable;ما ورد أعلاه هو خصائص جدول التجزئة في PHP وآمل أن يكون مفيدًا للجميع.