We have moved our forum to GitHub Discussions. For questions about Phalcon v3/v4/v5 you can visit here and for Phalcon v6 here.

the find method return value

I have a problem when I using the method find in models.

if I have a table called user like this :

id name

1 linbob

2 phalcon

3 framework

My code:

$userData = User::find();

foreach($userData as $key => $data) {

 echo 'key is '.$key.' and user is '.$data->name.'<br />';

}

the output is :

linbob

phalcon

framework

but if I have the code :

$userData = User::find();

echo $userData[-1]->name;

echo $userData[-100]->name;

why the output is the first value and why this key has value?

In your example $userData isn't actually an array, it's an object that is probably extending the ArrayIterator class

My guess is that using negative array indices is either undefined, or is defined as just returning the first item.