【问题标题】:How to update database fields with mixed arrays and strings如何使用混合数组和字符串更新数据库字段
【发布时间】:2016-05-31 06:05:15
【问题描述】:

我有一个包含 URL 字符串的数组,但是其中一些数组元素也是一个数组。所以有些可能是http://google.com,有些可能是:

Array([0] => http://yahoo.com [1] => http://msn.com)

我正在尝试将所有这些 url 的列表添加到数据库中。但是,我需要为多维数组扩展列表。即我试图建立的列表应该如下所示:

http://google.com
http://yahoo.com
http://msn.com

所以我最初是通过 foreach 执行此操作,然后我认为我可以在 foreach 中使用 foreach 扩展多维数组,但不确定是否可行。这是我目前拥有的,但不起作用。

foreach($allfiles as $file) {
    if(is_array($file)) {
        $files = $file {
            foreach($files as $file)
        }
    }
    $qry2 = mysqli_query($con,"INSERT INTO files(name) VALUES($file)");
    echo '<br>'.$file;
    if($qry2) echo ' -success';
    else echo ' -error';
}

【问题讨论】:

  • 是我还是你在第二次 foreach 中没有查询?

标签: php mysql arrays multidimensional-array foreach


【解决方案1】:

您可以创建一个递归函数来挖掘您的数组。

看看this explanation

【讨论】:

    【解决方案2】:
    function recursiveInsert($allfiles) {
        foreach($allfiles as $file) {
            if(is_array($file)) {
                recursiveInsert($file);
                continue;
            }
            $qry2 = mysqli_query($con,"INSERT INTO files(name) VALUES($file)");
            echo '<br>'.$file;
            if($qry2) echo ' -success';
            else echo ' -error';
        }
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-09-18
      • 1970-01-01
      • 2017-08-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多