PHP 1-liner each() with mysql_fetch_assoc()
Posted
by MVC You Know Me
on Stack Overflow
See other posts from Stack Overflow
or by MVC You Know Me
Published on 2010-05-16T15:13:18Z
Indexed on
2010/05/16
15:20 UTC
Read the original article
Hit count: 152
Hey All.
Trying to create a 1-liner to loop through a mysql result set.
Example:
$sql = "SELECT uid, role FROM usr WHERE uid = '$this->uid'";
$r = db::q($sql);
if($r->rows()) {
$q = mysql_fetch_assoc($r->result);
while(list($k, $v) = each($q)) { // would like to omit line above and consolidate here
$_SESSION['usr'][$k] = $this->$k = $v;
} }
problem is that consolidating while loop like so: while(list($k, $v) = each(mysql_fetch_assoc($r->result))
returns an error a la each() not getting object or array, even though of course it is. I think the problem is a casting issue, but it does not seem you can do: each( (array) mysql_fetch_assoc($r->result))
Any ideas? I like to code as tersely as possible, and having "$q = mysql_fetch_assoc($r->result)" everywhere will annoy me, does already.
Keep posted...
Thanks!
© Stack Overflow or respective owner