Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Adakah Kolon Utama Pilihan dalam PDOStatement::bindParam() Nama Parameter?

Adakah Kolon Utama Pilihan dalam PDOStatement::bindParam() Nama Parameter?

DDD
DDDasal
2024-11-14 09:58:02527semak imbas

Is the Leading Colon Optional in PDOStatement::bindParam() Parameter Names?

Kolon Utama Pilihan dalam PDOStatement::bindParam() Nama Parameter

Dokumentasi PHP untuk PDOStatement::bindParam() menyatakan bahawa parameter pengecam untuk pemegang tempat yang dinamakan hendaklah mempunyai borang ":name". Walau bagaimanapun, sesetengah pengguna telah memerhatikan bahawa kolon utama nampaknya adalah pilihan.

Adakah Kolon Pilihan?

Menurut dokumentasi, tidak, kolon tidak sepatutnya ditinggalkan. Ketiadaan penyebutan titik bertindih pilihan yang jelas menunjukkan bahawa tingkah laku ini tidak disokong secara rasmi dan tidak boleh dipercayai.

Tetapi Tunggu, Ia Berfungsi...

Menariknya, dalam PHP 5.3.24 (dan mungkin versi lain), meninggalkan titik bertindih utama memang berkesan. Ini kerana secara dalaman, titik bertindih ditambahkan pada parameter jika ia tiada. Tingkah laku ini ditemui dalam kod sumber untuk ext/pdo/pdo_stmt.c:363 (dalam PHP 5.3.24).

Implikasi

Sementara penyelesaian ini berfungsi pada masa ini , ia harus digunakan dengan berhati-hati. Versi PHP yang akan datang atau perubahan dalam tingkah laku PDO boleh memecahkan fungsi ini. Oleh itu, amalan terbaik adalah untuk mematuhi dokumentasi dan sentiasa memasukkan titik bertindih utama apabila menggunakan ruang letak bernama dengan PDOStatement::bindParam().

Atas ialah kandungan terperinci Adakah Kolon Utama Pilihan dalam PDOStatement::bindParam() Nama Parameter?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn