So arbeite ich an PDO Lernen und macht die Übertragung von den Standard-PHP-MySQL-Funktionen. Ich habe jedoch eine Frage. In Bezug auf die try {}
Blöcke, was genau sollte in ihnen sein, und was sollte außerhalb gehen?MySQL PDO - Was sollte in der try {Block} sein?
Should alles, was $sth-> ...
innerhalb try {}
sein verwendet? Sollte es nur von der Vorbereitung der Anweisung bis hin zur Ausführung sein? Noch weniger als das?
Jede Hilfe würde sehr geschätzt werden. :)
Hier ist ein Beispiel Methode, die ich in einer Klasse haben. Ist es richtig organisiert? Beachten Sie, wie ich alles innen try {}
setzen. Ist das falsch? Es fühlt sich falsch an, aber ich bin mir nicht sicher, wie ich es ändern sollte.
protected function authorized()
{
try
{
// Attempt to grab the user from the database.
$sth = $dbh->prepare("
SELECT COUNT(*) AS num_rows
FROM users
WHERE user_id = :user_id
");
$sth->bindParam(':user_id', $this->user_id);
$sth->execute();
// Check if user exists in database.
if ($sth->fetch()->num_rows > 0)
{
// User exists in database, and is therefore valid.
return TRUE;
}
else
{
// User does not exist in database, and is therefore invalid.
return FALSE;
}
}
catch (PDOException $e)
{
pdo_error($e);
}
}
ich frage neulich diese gleiche Frage bei der Arbeit! Geht alles oder nicht? – Drewdin
Sehr gute Frage. Dieses Thema ist etwas, das nicht viele Entwickler kennen –