PDO dan MySQL: Mendapatkan Nilai Numerik
Apabila bekerja dengan PDO dan MySQL, anda mungkin menghadapi keadaan di mana nilai integer yang diambil daripada pangkalan data adalah dikembalikan sebagai rentetan dan bukannya jenis angka. Untuk menangani isu ini, adalah penting untuk melumpuhkan emulasi pernyataan yang disediakan oleh PDO.
Untuk berbuat demikian:
$pdo = new PDO($dsn, $user, $password, [ PDO::ATTR_EMULATE_PREPARES => false, ]);
Dengan melumpuhkan emulasi, PDO akan menggunakan jenis data asli untuk pernyataan yang disediakan. Ini memastikan bahawa nilai integer dikembalikan sebagai jenis angka.
Perhatikan bahawa atribut PDO::ATTR_STRINGIFY_FETCHES tidak berkaitan untuk MySQL.
Walaupun kesulitan ini, menggunakan pernyataan yang disediakan adalah amalan yang sangat disyorkan, menawarkan keselamatan dan prestasi yang lebih baik.
Atas ialah kandungan terperinci Mengapa Integer MySQL Saya Dikembalikan sebagai Rentetan dalam PDO, dan Bagaimana Saya Boleh Membetulkannya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!