Это означает, что при использовании PDO для возврата результата в пользовательский объект необходимо указать переменные-члены, соответствующие ключам результата запроса.
, таких как:
class User
{
//Predefine Here
public $id;
public $username;
public $password;
public $email;
public $hash;
public function profileLink()
{
return sprintf('<a href="/profile/%s">%s</a>',$this->id,$this->username);
}
}
$result = $sth->fetchAll(PDO::FETCH_CLASS, "User");
foreach($result as $user)
{
echo $user->profileLink();
}
Таким образом, PDO может устанавливать переменные для объекта вне его внутренней области видимости.
если ваш пользовательский класс был таким:
class User
{
}
тогда PDO не сможет установить значения вне области видимости, так как свойства не определены.