PHP implode() 用 "array"替换所有数组值

标签 php mysql arrays

作为 MySQL SELECT 语句的一部分,我正在尝试动态查询数据库。

当前代码:

$stmt = $pdo->prepare('SELECT `COLUMN_NAME` FROM `INFORMATION_SCHEMA`.`COLUMNS` WHERE `TABLE_SCHEMA`="assignment" AND `TABLE_NAME`=:table AND `COLUMN_NAME` != :column1 AND `COLUMN_NAME` != :column2;');
  $criteria = [
    'table' => $_GET['section'],
    'column1' => 'jobid',
    'column2' => 'catid'
  ];
  $stmt->execute($criteria);

  $arr = array();

  echo '<form method="POST">';
  foreach ($stmt as $row){
    echo '<label>'.ucwords($row['COLUMN_NAME']).':</label>
    <input type="text" name="'.$row['COLUMN_NAME'].'"/><p>';
    $arr[] = $row;
  }
  echo '<input type="submit" value="Submit" name="submit"/>
      </form>';

  if (isset($_POST['submit']))
    echo $query = implode(',', $arr);

我已经使用 $_POST 值让它工作得很好,但出于某种原因它输出:

Array,Array,Array,Array,Array

即使 $arr 的 var_dump() 是:

    0 => 
    array (size=2)
      'COLUMN_NAME' => string 'title' (length=5)
      0 => string 'title' (length=5)
  1 => 
    array (size=2)
      'COLUMN_NAME' => string 'salary' (length=6)
      0 => string 'salary' (length=6)
  2 => 
    array (size=2)
      'COLUMN_NAME' => string 'location' (length=8)
      0 => string 'location' (length=8)
  3 => 
    array (size=2)
      'COLUMN_NAME' => string 'description' (length=11)
      0 => string 'description' (length=11)
  4 => 
    array (size=2)
      'COLUMN_NAME' => string 'category' (length=8)
      0 => string 'category' (length=8)

最佳答案

implode 函数无法按照您希望的方式处理数组数组。它获取 $arr 中的数组并将它们放入字符串“Array”中。您可以遍历数组并以这种方式内爆,例如,

$list = '';
foreach ($arr as $inner) {
    $list .= $inner['COLUMN_NAME'].',';
}
$list = rtrim($list,',');

关于PHP implode() 用 "array"替换所有数组值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34642391/

相关文章:

php - 使用 ajax() 或 jQuery.getJSON 和 jquery 将 php 对象数组传递到外部 javascript 文件?

php - 对 SOLR 的第一次查询比以下查询花费的时间长 30 倍

PhP(Codeigniter)在foreach循环之前合并查询结果

mysql - Flash 文本旋转器 xml

java - 表达式必须是数组,但是...要加倍

python - 从数组值动态填充 numpy 矩阵?

php - 在 Elasticsearch php API 中使用多种类型或索引

Mysql - 在分组依据中选择主要项目

php - 从本地开发服务器进行远程数据库管理

javascript - 解析 JSON 不起作用