首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PHP循环中的数组键比较

PHP循环中的数组键比较
EN

Stack Overflow用户
提问于 2012-09-11 23:56:57
回答 3查看 570关注 0票数 0

我有一个while循环,如下所示。我想对数据库中的所有字段求和,但忽略其中的几个字段。它们被称为id、summary和diff。

我已经在下面设置了我认为我需要的东西,但不知道如何正确地将当前键与这些字段名进行比较。

代码语言:javascript
复制
$sql = 'SELECT * FROM table';
$result = mysql_query($sql)
while ($row = mysql_fetch_array($result)){
//DOES KEY = an ignore field name?

//If No 
$i++
}
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-09-12 01:45:48

代码语言:javascript
复制
$ignoreTheseColumns = array("id", "summary", "diff");
$sum = 0;
$sql = 'SELECT * FROM table';
$result = mysql_query($sql)
while ($row = mysql_fetch_array($result)){
    foreach($row as $key=>$value)
    {
        //DOES KEY = an ignore field name?
        if(!in_array($key, $ignoreTheseColumns))
        {
            $sum+= $value
        }
}
票数 0
EN

Stack Overflow用户

发布于 2012-09-12 00:00:18

您可以从查询中排除相关内容:

代码语言:javascript
复制
SELECT * FROM table WHERE `key` NOT IN ('id','summary','diff')

或者,您可以只在您的PHP中使用if语句:

代码语言:javascript
复制
if($row['key'] == 'id' || $row['key'] == 'summary' || $row['key'] == 'diff') continue;
票数 0
EN

Stack Overflow用户

发布于 2012-09-12 00:01:21

使用in_arrayif(in_array($row[i], $values)您将不得不在行中执行循环以搜索每一列。只需构建一个包含要搜索的所有字段的数组

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12373660

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档