Cum să detectezi erorile generate de $wpdb->get_results()
Cum pot detecta erorile atunci când folosesc $wpdb->get_results()?
De exemplu:
$result = $wpdb->get_results("SELECT * FROM this is not a valid query");
Codul anterior nu generează nicio excepție sau eroare; pur și simplu setează $result la un array gol. Cum putem detecta în mod fiabil erorile generate de get_results()?

Există o variabilă de clasă care stochează ultimul mesaj de eroare - $wpdb->last_error. Judecând după modul în care este codificat $wpdb, dacă interogarea reușește, $wpdb->last_error va fi un șir gol, iar dacă eșuează, va fi mesajul de eroare returnat de MySQL. Deci, ceva de genul acesta ar funcționa.
$result = $wpdb->get_results("SELECT * FROM this is not a valid query");
if ($wpdb->last_error) {
echo 'Ai făcut ceva greșit! ' . $wpdb->last_error;
}

Sună rezonabil - nu pot să mă uit acum la asta, dar dacă funcționează, ar fi foarte util pe viitor! Mulțumesc! :)

Cel mai bun lucru pe care l-am găsit este:
$wpdb->show_errors();
$result = $wpdb->get_results("SELECT * FROM this is not a valid query");
$wpdb->hide_errors();
Din păcate, asta abia rezolvă problema. Vreau să gestionez eroarea programatic, nu doar să o afișez în fluxul de ieșire.
