У PHP асоціативні масиви реалізовані як хештеги з невеликою кількістю додаткової функціональності.
Однак технічно кажучи, асоціативний масив не є ідентичним хеш-таблиці - він просто реалізований частково з хеш-таблицею за лаштунками. Оскільки більша частина його реалізації є хеш-таблицею, вона може робити все, що може хеш-таблиця, але може робити і більше.
Наприклад, ви можете прокручувати асоціативний масив, використовуючи цикл for, чого не можна зробити за допомогою хеш-таблиці.
Отже, хоча вони схожі, асоціативний масив насправді може зробити надмножину того, що може зробити хеш-таблиця - отже, це не зовсім одне і те ж. Подумайте про це як про хештеги плюс додаткову функціональність.
Приклади коду:
Використання асоціативного масиву як хеш-таблиці :
$favoriteColor = array();
$favoriteColor['bob']='blue';
$favoriteColor['Peter']='red';
$favoriteColor['Sally']='pink';
echo 'bob likes: '.$favoriteColor['bob']."\n";
echo 'Sally likes: '.$favoriteColor['Sally']."\n";
Цикл через асоціативний масив :
$idTable=array();
$idTable['Tyler']=1;
$idTable['Bill']=20;
$idTable['Marc']=4;
foreach($idTable as $person=>$id)
echo 'id: '.$id.' | person: '.$person."\n";
Особливо зверніть увагу, як у другому прикладі підтримується порядок кожного елемента (Тайлер, Білл Марк) на основі порядку, в якому вони були введені в масив. Це основна різниця між асоціативними масивами та хеш-тегами. Хеш-таблиця не підтримує зв'язку між елементами, які вона містить, тоді як асоціативний масив PHP це робить (ви навіть можете сортувати асоціативний масив PHP).