我的数据库类中有这个方法
public function query($queryString)
{
if (!$this->_connected) $this->_connectToDb(); //connect to database
$results = mysql_query($queryString, $this->_dbLink) or trigger_error(mysql_error());
return mysql_num_rows($results) > 0 ? mysql_fetch_assoc($results) : false;
}
这对于返回 1 行的查询非常有用,但如何才能获得返回类似这样的数组呢?
$array[0]['name'] = 'jim'
$array[0]['id'] = 120
$array[1]['name'] = 'judith'
$array[1]['ID'] = 121
现在我知道我可以使用 while 循环将这些数据插入到数组中,就像这样,但我想知道 PHP 是否可以使用内部函数来做到这一点?我无法在文档中找到我想要的内容。
我不想在方法中运行 while 的原因是因为我将在返回数组时重申该数组,并且我不想两次运行结果(出于性能原因)。
有没有办法做到这一点?我的通用查询方法设计有问题吗?
非常感谢!
public function query($queryString)
{
if (!$this->_connected) $this->_connectToDb(); //connect to database
$results = mysql_query($queryString, $this->_dbLink) or trigger_error(mysql_error());
$data = array();
while($row = mysql_fetch_assoc($results))
{
$data[] = $row;
}
return $data;
}
这将始终返回一个数组。
编辑:
我没有很好地阅读问题。
如果你真的不想使用循环那么我会这样做:
public function query($queryString)
{
if (!$this->_connected) $this->_connectToDb(); //connect to database
return mysql_query($queryString, $this->_dbLink) or trigger_error(mysql_error());
}
然后循环它,但是我只会使用循环。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)