all these functions provide a handy abstraction to zends internal hash api of course you can also use the hash functions directly for example if you already have a zval container allocated that you want to insert into an array this is done using zend _ hash _ update for associative arrays see れい 333 and zend _ hash _ index _ update for indexed arrays see れい 334 