Like array_push() where we can push an element in to array. I want to push an hash [name,url] in to an array of hash.
If you're referring to associative arrays where the key is user-provided (rather than an auto-incrementing numeric field), just use direct syntax:
$a = Array();
$a['name'] = 'url';
Note that $a = Array(); array_push($a, 'lol');
is (almost) the same as $a = Array(); $a[] = 'lol';
. array_push
is just a (pointless) "shortcut" for the same syntax, which only works for automatic, numeric indexes.
I strongly recommend reading the PHP manual section on the topic. That's what it's there for.
I do not know, what do you need, but it you need to push pair of values into array, this may be your solution:
$hashes_array = array();
array_push($hashes_array, array(
'name' => 'something1',
'url' => 'http://www1',
));
array_push($hashes_array, array(
'name' => 'something2',
'url' => 'http://www2',
));
After that $hashes_array
should look like that (each element of the bigger array is array itself - associative array with two keys and two values corresponding to them):
[
['name' => 'something1', 'url' => 'http://www1'],
['name' => 'something2', 'url' => 'http://www2']
]
ifif i understand your problem, you want to retrieve hash value from a url then use parse_url
with PHP_URL_FRAGMENT argument
$url = 'http://username:password@hostname/path?arg=value#anchor';
print_r(parse_url($url));
echo parse_url($url, PHP_URL_FRAGMENT);
will return
[fragment] => anchor
Reference
<?php
$aArrayOfHash['example'] = 'http://example.com/';
?>