PHP, for all its warts, is pretty good on this count. There's no difference between an array and a hash (maybe I'm naive, but this seems obviously right to me), and to iterate through either you just do
foreach (array/hash as $key => $value)
In Ruby there are a bunch of ways to do this sort of thing:
array.length.times do |i|
end
array.each
array.each_index
for i in array
Hashes make more sense, since I just always use
hash.each do |key, value|
Why can't I do this for arrays? If I want to remember just one method, I guess I can use each_index
(since it makes both the index and value available), but it's annoying to have to do array[index]
instead of just value
.
Oh right, I forgot about array.each_with_index
. However, this one sucks because it goes |value, key|
and hash.each
goes |key, value|
! Is this not insane?
Best Solution
This will iterate through all the elements:
Prints:
This will iterate through all the elements giving you the value and the index:
Prints:
I'm not quite sure from your question which one you are looking for.