Earlier quoted context omitted.
I don't see how that would work. I'd say that the two snippets describe different intentions and using one when you want the other is a case of not saying what you mean. A function call in a loop condition might have side effects or do something very unorthodox.
I guess this is a problem with trivial examples. Pulling redundant work out of loops is a category of optimization that is widely used. In many cases, the optimizer can detect a lack of side effects on $list inside the loop body and perform the above optimization.
The implementation by facebook (HipHop) might have such an optimization though.