Intereting Posts
WordPress Добавить нового пользователя – отправить электронную почту активации Add_image_size не создает правильный размер Отображение содержимого POST с помощью HTML-тегов и всего Как показать мой <p> содержащий мое настраиваемое поле ТОЛЬКО, если в этом настраиваемом поле задано значение? добавить новую динамическую структуру с динамической страницы Лучшая практика для разработки плагина с этим сценарием query_posts () vs get_posts () несколько циклов Обновить (функцию) сообщение после того, как будет изменено значение $ image_url Проблема производительности при первой загрузке Функция «Нажмите кнопку« Обновить »на всех постах Не удалось выполнить обновление из-за несогласованных разрешений файлов Как добавить объявления Google на свою домашнюю страницу? Запросить все опубликованные сообщения и вложение с определенным типом mime WordPress / Woocommerce показывают только категорию в магазине до одной роли Получить содержимое страницы и выполнить короткие коды на странице

Обнаружение ошибок, вызванных $ wpdb-> get_results ()

Как обнаружить ошибки при использовании $ wpdb-> get_results ()?

Например:

$result = $wpdb->get_results("SELECT * FROM this is not a valid query"); 

Предыдущий код не генерирует никаких исключений или ошибок; он просто устанавливает $ result в пустой массив. Как мы надежно обнаруживаем ошибки, вызванные get_results ()?

Solutions Collecting From Web of "Обнаружение ошибок, вызванных $ wpdb-> get_results ()"

Существует переменная класса, в которой хранится последняя строка ошибки – $ wpdb-> last_error. При взгляде на то, как кодируется $ wpdb, если запрос завершается успешно, $ wpdb-> last_error будет пустой строкой, если это не удастся, это будет строка ошибок, возвращаемая MySQL. Так что-то вроде этого сделало бы трюк.

 $result = $wpdb->get_results("SELECT * FROM this is not a valid query"); if ($wpdb->last_error) { echo 'You done bad! ' . $wpdb->last_error; } 

Лучшее, что я могу найти, это:

 $wpdb->show_errors(); $result = $wpdb->get_results("SELECT * FROM this is not a valid query"); $wpdb->hide_errors(); 

К сожалению, это вряд ли решает проблему. Я хочу обрабатывать ошибку программно, а не просто отсылать ее к выходному потоку.