使用if在循环中检查mysql_fetch_array中的列

时间:2013-01-30 21:18:06

标签: php mysql

我是PHP的新手,可以进行MySQL操作。问题解决后,数据库有2列 - 城市,自治市镇。一些城市有一个自治市,人口密集。有些城市没有,而自治市场是空的。如果填充了自治市镇字段,我只想将数据检索到数组中。我的代码如下:

    while ($row = mysql_fetch_array($fetch, MYSQL_ASSOC)){
        if ( what_column_identifier_goes_here? != null ){
        /* For each row containing borough_data, put it in the return array */
        $row_array['city'] = $row['borough']; 
        array_push($return_arr,$row_array);
        }
    }

我试着寻找答案,但我找不到好的条款。从搜索中,我怀疑这已被弃用。目前,我只想获得一些工作,然后我将学习PDO并在几个脚本中进行一系列更改。

感谢您的帮助。

3 个答案:

答案 0 :(得分:1)

假设您的查询类似于

SELECT city, borough FROM ...

然后你可以使用mysql_fetch_assoc(),它返回一个简单的关联数组:fieldname - > value :(不需要额外的fetch参数)

if (!empty($row['borough'])) {
    $city stuff....
}

使用fetcharray,你必须自己计算位置:

SELECT field1,  field2,  field3, ...  <-- in SQL
       $row[0], $row[1], $row[2], ... <--- in PHP

答案 1 :(得分:0)

if ($row['borough']) // do something

或者在查询中执行:

SELECT city, borough FROM table WHERE borough IS NOT NULL

答案 2 :(得分:-1)

SELECT FROM TABLE WHERE borough<>''
或许这可以帮助你快速。 如果您需要更多帮助,请访问 http://www.w3made.com