当前位置:  开发笔记 > 编程语言 > 正文

循环获取PHP关联数组键

如何解决《循环获取PHP关联数组键》经验,为你挑选了2个好方法。

我有以下代码:

while ($row = mysql_fetch_array($result, MYSQL_NUM)) 
    {
        for ($i=0; $i

我基本上想做,如果关联数组键等于"email"(所以$ row ['email'])然后追加"@ gmail.com".



1> Adam Peck..:

使用foreach循环并获取assoc数组的键和值.

foreach($row as $key => &$value)
{
    if($key == 'email') $value .= "@gmail.com";
}

mysql_fetch_array($result, MYSQL_ASSOC)如果要返回关联数组,也应该使用它.

附加到电子邮件密钥的更有效方法是:

if(isset($row['email']))
    $row['email'] .= '@gmail.com';

而不是遍历所有列.



2> Crescent Fre..:

看到MYSQL_NUM你在那里?这将使用列索引作为键(即0,1,2等)返回您的数据.

你必须要么

a)找出该email字段的列索引并执行以下操作:

while ($row = mysql_fetch_array($result, MYSQL_NUM)) 
{
    // 'email' is in column number 5
    $row[5] .='@gmail.com';

    for ($i=0; $i

b)或您可以更改MYSQL_NUMMYSQL_ASSOC,然后执行:

while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) 
{
    $row['email'] .='@gmail.com';

    foreach($row as &$value)
    {
        $value = str_replace("\n", " ", $value);
        $value = str_replace("\r", " ", $value);
    }
}

请注意"&"之前$value将其作为参考.

我会做后者(我更喜欢foreachfor:)

推荐阅读
jerry613
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有