如何将PDO fetchAll的结果转换为字符串?

时间:2019-12-13 11:58:16

标签: php pdo

如何将fetchAll()结果转换为字符串?就像遍历所有获取的数组内容并尝试回显它们一样,这给了我一个“数组到字符串转换”错误。 我想回显数组的每个值。

$pdo = new PDO($dsn, $user, $password);
    $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    $stmt = $pdo->prepare("SELECT company_name, job_name, job_description, job_location, contact_email FROM joblist");
    $stmt->execute();
    $result = $stmt->fetchAll();
    print_r($result);
    // echo $result[0];
    foreach ($result as $key => $value) {
        echo $value;
    }

我的结果如下:

Array (
    [company_name] => alex
    [0] => alex
    [job_name] => driver
    [1] => driver
    [job_description] => drive a truck with goods
    [2] => drive a truck with goods
    [job_location] => america
    [3] => america
    [contact_email] => alex@email.com
    [4] => alex@email.com
)
  

注意:数组到字符串的转换   C:\xampp\htdocs\jobs-app\postjob.php在第23行

3 个答案:

答案 0 :(得分:1)

$ value是数组格式。因此您无法回显数组。

foreach ($result as $key => $value) {
   echo $value['job_name'];
}

答案 1 :(得分:1)

您在数组中有一个数组,像这样回显它应该起作用

foreach ($result as $key => $value) {
    echo $value[0];
}

如果要使其更加精确,则应执行此操作

foreach ($result as $key => $value) {
    echo $value['company_name'];
}

答案 2 :(得分:0)

foreach中的

$ value是数组。试试这个。

foreach ($result as $key => $value) {
   echo $value['company_name'];
}