【问题标题】:singly mysql field in an associative array关联数组中的单个 mysql 字段
【发布时间】:2015-07-01 16:28:28
【问题描述】:

我目前有这个代码:

$res= $mysqli->query("SELECT titre FROM Bibliographie WHERE Nom_Auteur LIKE '%$auteur%'"); 

while ($row=$res->fetch_assoc()) {
    var_dump($row);
} 

结果是:

array(1) {
    ["titre"]=>
    string(65) "Le droit privé dans les Pays-Bas méridionaux du 12e au 18e siècle"
}
 array(1) {
    ["titre"]=>
    string(41) "Le droit foncier à Bruxelles au moyen-âge"  
} 
array(1) {
    ["titre"]=>
    string(78) "Les sûretés personnelles dans les Pays-Bas méridionaux du XIe au XVIIIe siècle"
}
array(1) {
    ["titre"]=>
    string(44) "Chartes du chapitre de St-Gudule à Bruxelles"
}

但我希望结果是:

[0] => "Le droit privé dans les Pays-Bas méridionaux du 12e au 18e siècle"
[1] => "Le droit foncier à Bruxelles au moyen-âge"
[2] => "Chartes du chapitre de St-Gudule à Bruxelles"

我无法理解这一点,需要一些帮助才能获得这个简单的结果......

【问题讨论】:

    标签: php mysql arrays associative-array


    【解决方案1】:

    尝试改用while ($row=$res->fetch_array()){var_dump($row);}。见Mysqli fetch_assoc vs fetch_array

    【讨论】:

      【解决方案2】:

      你可以通过这种方式达到你想要的结果:

      $result = array();
      while ($row=$res->fetch_assoc()) {
          $result[] = $row['titre'];
      } 
      var_dump($result);
      

      【讨论】:

        【解决方案3】:

        您有多种选择,

        1) 您可以使用 fetch_all() 方法而不是 fetch_assoc() 一次获取一个变量中的所有数据,然后您可以使用此函数展平数组。

        $res= $mysqli->query("SELECT titre FROM Bibliographie WHERE Nom_Auteur LIKE '%$auteur%'"); 
        $result = array_map(function($ary) {return $ary['titre'];}, $res->fetch_all());
        // Just two lines of code. No big deal
        

        2) 正如 Gerald Schneider 所建议的,

        $res= $mysqli->query("SELECT titre FROM Bibliographie WHERE Nom_Auteur LIKE '%$auteur%'"); 
        
        $result = array();
        while ($row=$res->fetch_assoc()) {
             $result[] = $row['titre'];
        } 
        var_dump($result);
        // simple and easy to understand
        

        【讨论】:

          猜你喜欢
          • 2016-09-27
          • 1970-01-01
          • 1970-01-01
          • 2020-07-24
          • 2015-08-17
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多