有人可以解释存储在“新PDO”中的内容

时间:2013-03-19 09:03:32

标签: php pdo

我很难理解我刚刚做的教程中的$conn。它来自Tutsplus PHP Fundamentals课程。

我已经得到以下代码:

<?php
require 'config.php';
$letter = 'J%';
try {
$conn = new PDO('mysql:host=localhost; dbname=practice', $config['DB_USERNAME'], $config['DB_PASSWORD']);
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); //Switch to turn on error modes with errors displayed

$stmt = $conn->prepare('SELECT * FROM users WHERE username LIKE :placeholder');

$stmt->bindParam('placeholder', $letter, PDO::PARAM_INT);
$stmt->setFetchMode(PDO::FETCH_OBJ);
$stmt->execute();

while($row = $stmt->fetch()) {
    print_r($row);
}
} catch(PDOException $e) {
echo 'ERROR: ' . $e->getMessage();
}

我了解:placeholder部分。我不太了解的部分特别是这一行中的$conn

$stmt = $conn->prepare('SELECT * FROM users WHERE username LIKE :placeholder');

如果我现在理解->,则意味着我们将变量$conn传递给函数prepare()并将结果存储在$stmt中。我没有得到的是$conn目前从PDO连接中保留的内容。我尝试了print $conn;,但收到了错误。

2 个答案:

答案 0 :(得分:-1)

PDO(php数据库对象)是一个标准库,使用面向对象的接口提供对不同数据库驱动程序的访问。

“$ conn”对象是PDO类的一个实例。

  

“面向对象编程”中的对象本质上是数据结构及其相关的处理例程。

您应该至少学习OOP基础知识,以充分了解它的工作原理。

http://en.wikipedia.org/wiki/Object-oriented_programming

  

如果我理解 - &gt;现在它意味着我们将变量$ conn传递给函数prepare()

没有。 “ - &gt;” 中运算符,您调用对象“$ conn”

的函数“准备”

答案 1 :(得分:-2)

$ conn包含PDO类的对象。