Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/245.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/69.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)中将MySQL连接详细信息存储为函数_Php_Mysql_Function_Pdo - Fatal编程技术网

在PHP(PDO)中将MySQL连接详细信息存储为函数

在PHP(PDO)中将MySQL连接详细信息存储为函数,php,mysql,function,pdo,Php,Mysql,Function,Pdo,我正在尝试PDO扩展,想知道是否可以将DB连接的打开存储为一个函数,在需要时可以调用该函数。我试过一些基本的东西,但似乎不起作用。可以吗 示例函数 function DB() { $conn = new PDO('mysql:host='.DB_HOST.';dbname='.DB_NAME, DB_USER, DB_PASS); $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); if (!$conn) {

我正在尝试PDO扩展,想知道是否可以将DB连接的打开存储为一个函数,在需要时可以调用该函数。我试过一些基本的东西,但似乎不起作用。可以吗

示例函数

function DB() {
$conn = new PDO('mysql:host='.DB_HOST.';dbname='.DB_NAME, DB_USER, DB_PASS);
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
if (!$conn) {
    echo "<br />MySQL SERVER CONNECTION ERROR.<br />\n";
}
if($conn) {
    return $conn;
}
}
称之为:

$conn=$this->DB()


$conn=$className->DB()

$this
没有预先定义?如果函数在同一类中,则需要调用$this。否则,如果它在另一个类中,则创建该类的一个实例并在第二个示例中调用。对不起,我可能遗漏了一些内容。根本没有类,只有独立的函数。
function is_post_id($submitted) {

try {
    $id = $submitted;
    DB();   

    //check to see if there is a post
    //with an id matching the submitted query
    $qPOST= $conn->prepare('SELECT COUNT(*) FROM posts WHERE id = :id');
    $qPOST->execute(array('id' => $id)); 

    //results counted
    $cPOST= (int)$qPOST->fetchColumn();
    if($cPOST > 0) {
        return TRUE;
    }
    else {
        return FALSE;
    }
} catch(PDOException $e) {
    echo $e->getMessage();
}
}