Quindi sto lavorando all'apprendimento di PDO e al trasferimento dalle funzioni standard MySQL di PHP. Tuttavia, ho una domanda. Per quanto riguarda i blocchi try {}
, cosa dovrebbero essere esattamente in essi e cosa dovrebbe andare al di fuori di esso?MySQL DOP - Cosa dovrebbe esserci nel try {block}?
Tutto ciò che utilizza $sth-> ...
deve essere all'interno di try {}
? Dovrebbe essere solo dal momento in cui la dichiarazione viene preparata per la prima volta fino a quando viene eseguita? Ancora meno?
Qualsiasi aiuto sarebbe molto apprezzato. :)
Ecco un metodo di esempio che ho in una classe. È organizzato correttamente? Si noti come ho messo nel all'interno di try {}
. È sbagliato? Mi sembra sbagliato, ma non sono sicuro di come dovrei cambiarlo.
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);
}
}
Stavo facendo la stessa domanda al lavoro l'altro giorno! Tutto va o no? – Drewdin
Ottima domanda. Quell'argomento è qualcosa che molti sviluppatori non conoscono –