Page 1 of 1

function returns an array

Posted: Mon Nov 24, 2003 7:01 pm
by davidrowlinson
New to PHP, but what is wrong with this syntax...

$some_column = mysql_fetch_array($sql)['a_column'];

or, more explicitly

$some_column = (mysql_fetch_array($sql))['a_column'];


David

Posted: Mon Nov 24, 2003 7:14 pm
by DuFF
It should be more like this:

Code: Select all

$db = mysql_connect($db_host,$db_user,$db_pass);
mysql_select_db ($db_name) or die ("Cannot connect to database");
$query = "SELECT * FROM table";
$result = mysql_query($query);
while ($r = mysql_fetch_array($result))
{
$some_column = $r['a_column'];
}
mysql_close();

Posted: Tue Nov 25, 2003 5:22 am
by Weirdan
Function return value doesn't gets dereferenced in php4. So you have to use intemediate variable to store return value and then use it:

Code: Select all

$some_column = mysql_fetch_array($sql);
$some_column = $some_column['a_column'];
Briefly, this:

Code: Select all

$some_column = mysql_fetch_array($sql)['a_column'];
syntax isn't allowed in php4.