Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/256.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/56.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何将pdo返回的关联数组的内容获取到数组中_Php_Mysql_Arrays_Pdo - Fatal编程技术网

Php 如何将pdo返回的关联数组的内容获取到数组中

Php 如何将pdo返回的关联数组的内容获取到数组中,php,mysql,arrays,pdo,Php,Mysql,Arrays,Pdo,我正在使用PHO-PDO并让它返回一个关联数组 我可以循环使用PDO创建的关联数组,但我无法确定如何从函数返回数组 function wantedrentals($provence, $country, $dbh) { echo "Now in wanted wanted rentals function<br><br>"; $journeyrentalssarray = array(); $sth = $dbh->q

我正在使用PHO-PDO并让它返回一个关联数组

我可以循环使用PDO创建的关联数组,但我无法确定如何从函数返回数组

function wantedrentals($provence, $country, $dbh)
   {
      echo "Now in wanted wanted rentals function<br><br>"; 

      $journeyrentalssarray = array();

      $sth = $dbh->query("SELECT summary, url, provence, country from tblAccomadation WHERE country = $country ");

    # setting the fetch mode
    $sth->setFetchMode(PDO::FETCH_ASSOC);

    while($row = $sth->fetch()) 
        {
            echo $row['summary'] . "\n";
            echo $row['url'] . "\n";
            echo $row['provence'] . "\n";
            echo $row['country'] . "\n";
        }

  return $journeyrentalssarray;
  }

我对PHP和PDO非常陌生,非常感谢您的帮助。

您可能希望这样做

function wantedrentals($provence, $country, $dbh)
   {
      echo "Now in wanted wanted rentals function<br><br>"; 

      $journeyrentalssarray = array();

      $sth = $dbh->query("SELECT summary, url, provence, country from     tblAccomadation WHERE country = '$country' ");

    # setting the fetch mode
    $sth->setFetchMode(PDO::FETCH_ASSOC);

    while($row = $sth->fetch()) 
        {
            $journeyrentalssarray[] = $row; // add $row to $journeyrentalssarray array
            echo $row['summary'] . "\n";
            echo $row['url'] . "\n";
            echo $row['provence'] . "\n";
            echo $row['country'] . "\n";
        }

  return $journeyrentalssarray;
  }
function wantedrentals($provence, $country, $dbh)
   {
      echo "Now in wanted wanted rentals function<br><br>"; 

      $journeyrentalssarray = array();

      $sth = $dbh->query("SELECT summary, url, provence, country from tblAccomadation WHERE country = $country ");

    # setting the fetch mode
    //$sth->setFetchMode(PDO::FETCH_ASSOC);

    return $sth->fetch(PDO::FETCH_ASSOC);
  }
FETCH_ASSOC将返回结果集中返回的按列名索引的数组

fetch函数在成功时的返回值取决于您案例中的fetch类型,失败时返回fetch_ASSOC和FALSE

欲了解更多信息,请阅读

我们还可以使用fetchAll获取所有结果集行的数组。 所以函数可能是这样的

function wantedrentals($provence, $country, $dbh)
       {
          echo "Now in wanted wanted rentals function<br><br>"; 

          $journeyrentalssarray = array();

          $sth = $dbh->query("SELECT summary, url, provence, country from tblAccomadation WHERE country = $country ");


        return $sth-> fetchAll(PDO::FETCH_ASSOC);
      }

有关更多信息,请阅读

var_dump$row;,您将获得什么?您可能需要查看以下内容:。此函数以数组形式返回整个结果。此函数只返回一行,然后停止。是否有帮助?:谢谢你的反馈。如果发布的解决方案对您有效,您应该将其标记为解决方案,以奖励答案分数。