Rumah > pembangunan bahagian belakang > tutorial php > Adakah Meninggalkan Titik Bertitik Utama dalam PDOStatement::bindParam() Menamakan Parameter sebagai Gelagat yang Disokong?

Adakah Meninggalkan Titik Bertitik Utama dalam PDOStatement::bindParam() Menamakan Parameter sebagai Gelagat yang Disokong?

Susan Sarandon
Lepaskan: 2024-11-10 13:43:02
asal
565 orang telah melayarinya

Is Omitting the Leading Colon in PDOStatement::bindParam() Named Parameters a Supported Behavior?

Pengguguran Kolon Utama dengan Parameter Dinamakan dalam PDOStatement::bindParam()

Dalam PDOStatement::bindParam(), nampaknya lulus parameter bernama tanpa titik bertindih utama (cth., ':name') berfungsi sama dengan memasukkan kolon (cth., 'nama'). Tingkah laku ini mungkin kelihatan membingungkan memandangkan dokumentasi, yang menyatakan bahawa "pengecam parameter" harus menyertakan titik bertindih utama untuk ruang letak yang dinamakan.

Sokongan Rasmi

Pernyataan PDO:: Dokumentasi bindParam() tidak menyatakan secara eksplisit bahawa kolon utama adalah pilihan untuk parameter yang dinamakan. Oleh itu, adalah bijak untuk menganggap bahawa tingkah laku ini tidak disokong secara rasmi dan tidak sepatutnya digunakan dalam kod pengeluaran.

Mekanisme Asas

Walaupun kekurangan dokumentasi rasmi, peninggalan kolon utama nampaknya berfungsi dalam versi PHP seperti 5.3.24 disebabkan oleh mekanisme dalaman. Khususnya, jika titik bertindih tiada, ia ditambah secara automatik pada parameter semasa pelaksanaan PDOStatement::bindParam(). Pembetulan dalaman ini boleh diperhatikan dalam kod sumber PDO (ext/pdo/pdo_stmt.c).

Pengesyoran

Walaupun mungkin untuk menghilangkan kolon terkemuka dalam parameter bernama dalam versi PHP semasa, ia tidak disyorkan. Ketiadaan sokongan rasmi bermakna versi PHP masa hadapan mungkin tidak mengekalkan tingkah laku ini, yang membawa kepada kemungkinan ralat. Oleh itu, amalan terbaik sentiasa untuk memasukkan titik bertindih utama secara konsisten apabila menghantar parameter yang dinamakan kepada PDOStatement::bindParam() untuk keserasian dan kebolehpercayaan maksimum.

Atas ialah kandungan terperinci Adakah Meninggalkan Titik Bertitik Utama dalam PDOStatement::bindParam() Menamakan Parameter sebagai Gelagat yang Disokong?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan