Rumah >pembangunan bahagian belakang >tutorial php >Bolehkah Anda Menggunakan Semula Pemegang Tempat Dinamakan dalam Pertanyaan Berparameter PDO?
Pertanyaan Berparameter PDO: Bolehkah Pemegang Tempat Dinamakan Digunakan Semula?
Dalam PHP, ruang letak bernama sering digunakan untuk meningkatkan keselamatan dan kebolehbacaan pangkalan data pertanyaan dengan menghalang suntikan SQL. Soalan lazim yang timbul ialah sama ada boleh menggunakan semula pemegang tempat bernama yang sama beberapa kali dalam satu pernyataan.
Malangnya, seperti yang ditunjukkan oleh dokumentasi untuk PDO::prepare, "anda tidak boleh menggunakan penanda parameter bernama bagi nama yang sama dua kali dalam kenyataan yang disediakan." Ini menunjukkan bahawa menggunakan ruang letak bernama yang sama (:Param) untuk kedua-dua ruang letak dalam pertanyaan yang disediakan (SELECT :Param FROM Table WHERE Column = :Param) akan mengakibatkan ralat.
Oleh itu, tidak boleh digunakan semula menamakan pemegang tempat dengan cara ini. Jika anda perlu merujuk kepada nilai yang sama beberapa kali dalam pertanyaan, anda perlu menggunakan ruang letak bernama berasingan atau mengikat nilai yang berbeza pada pemegang tempat yang sama dalam bahagian pertanyaan yang berbeza.
Atas ialah kandungan terperinci Bolehkah Anda Menggunakan Semula Pemegang Tempat Dinamakan dalam Pertanyaan Berparameter PDO?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!