* Thus wrote Scott Hyndman:
> 
> Now here's the problem. When I'm debugging this thing, the line that
> I've marked doesn't actually add anything to the array. If I try to view
> the contents of the array, it gives me a "cannot find element in
> variable" error. Later, when I iterate through it, two elements are
> outputted (don't ask me why, my iterator is perfect, I checked). Can
> someone shed some light on this? It's pretty annoying...in the mean
> time, I'll just use arrays.

There are many things that can be going wrong. First thing is that
your collection object is relying on an external value for its
internal index.

Second, being that it is external, the value may be repeating
itself, or as what has been pointed out earlier, is being converted
to true/false.

Third, from the looks of the code, it looks like your trying to
force the index to be the order of the position of the object:

    <?php
    $ar[5] = 'last';
    $ar[1] = 'first';
    $ar[4] = 'second';

    print_r($ar);

    /*
    Array
    (
       [5] => last
       [1] => first
       [4] => second 
    )
    */

As noted in the output, php simply pushes new key/values to the
end.

Fourth, how are you accessing the array to get the 'cannot find
element in variable' error. I've never heard of such an error.

And finally, print_r($this->arr_objects), each time you Add(), and
see how exactly the array looks each time.  If you have more than
two elements after the last Add(), then your iterator is most
likely not working properly.


Curt
-- 
First, let me assure you that this is not one of those shady pyramid schemes
you've been hearing about.  No, sir.  Our model is the trapezoid!

-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to