Mengambil Keputusan Pertanyaan MySQL dalam Jenis Data Asli
Apabila menggunakan MySQL dalam PHP, mendapatkan kembali hasil pertanyaan melalui fungsi seperti mysql_fetch_row() dan mysql_result( ) biasanya menjadikan nilai berangka sebagai rentetan. Ini mungkin tidak selalunya sesuai, terutamanya jika anda perlu menggunakan data dalam format asalnya.
Dalam PHP 5.2, mengambil data dalam jenis data asalnya bukanlah mudah. Walau bagaimanapun, PHP 5.3 memperkenalkan pemacu mysqlnd, yang membawa keupayaan untuk mengembalikan jenis data asli apabila menggunakan penyata yang disediakan di sebelah pelayan. Ini bermakna lajur INT akan dikembalikan sebagai integer, bukannya rentetan.
Sebagai contoh, apabila menggunakan mysqlnd dengan pernyataan yang disediakan, kod berikut akan mengembalikan lajur id sebagai integer:
<code class="php">$stmt = $conn->prepare("SELECT id FROM table_name WHERE name = ?"); $stmt->execute(array($name)); $row = $stmt->fetch(PDO::FETCH_ASSOC); $id = $row['id'];</code>
Jika anda tidak dapat menggunakan pernyataan yang disediakan atau sedang bekerja dengan versi PHP sebelum 5.3, anda boleh mempertimbangkan untuk menggunakan sistem pemetaan tersuai atau alat Pemetaan Perhubungan Objek (ORM) untuk menukar hasil pangkalan data kepada jenis data PHP. Walau bagaimanapun, pendekatan ini mungkin memperkenalkan pengehadan apabila menggunakan operator sensitif jenis seperti === dan !==.
Atas ialah kandungan terperinci Bagaimana untuk Mengambil Keputusan Pertanyaan MySQL dalam Jenis Data Aslinya dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!