首页 > 解决方案 > 在函数中访问 $pdo

问题描述

我想使用一个函数从我的数据库中选择不同的数据。不幸的是,我无法访问$pdo该功能。这是为了更好地理解的代码:

配置文件

...
$pdo = new PDO("mysql:host=$host;dbname=$database", $user, $password);

选择.php

include 'config.php';

function abc($sql) {
    $stmt = $pdo->prepare($sql);
    $stmt->bindParam(':name', $name);
    $stmt->execute();
}

$sql = "SELECT a FROM table WHERE b = :name";
abc($sql);

$sql = "SELECT a FROM table WHERE c = :name";
abc($sql);

错误:

在 null 上调用成员函数 prepare()

如果我将 config.php 放入函数中,它就像一个魅力。

标签: phpfunctionpdo

解决方案


您可以声明$pdo为全局,或将其作为第二个参数传递给abc. 那有什么问题?


推荐阅读