⊗ppSpPDNP 62 of 83 menu

Автоматично обвиване на плейсхолдери в кавички в PDO в PHP

Технически PDO всички поставяни стойности обвива в кавички, считайки ги за низове, дори ако те всъщност са числа. Това е допустимо от синтаксиса на SQL. Затова плейсхолдерите не е необходимо да се обвиват в кавички, ако имате низова стойност.

Нека разгледаме пример. Да предположим, че във променлива се съхранява низ:

<?php $name = 'name1'; ?>

Позиционният плейсхолдер не трябва да се обвива в низ в този случай:

<?php $sql = 'SELECT * FROM users WHERE name=?'; $res = $pdo->prepare(); $res->execute([$name]); ?>

Именуваният плейсхолдер също не трябва да се обвива в низ:

<?php $sql = 'SELECT * FROM users WHERE name=:name'; $res = $pdo->prepare(); $res->execute(['name' => $name]); ?>

Фактът, че в заявката винаги ще има низове, все пак понякога може да доведе до проблеми със синтаксиса на SQL - там, където по синтаксис задължително са необходими числа. В този случай може да се използва алтернативен начин за свързване на параметри, който ще разгледаме в следващите уроци.

Български
AfrikaansAzərbaycanবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Ние използваме бисквитки за работата на сайта, анализ и персонализация. Обработката на данни се извършва в съответствие с Политика за поверителност.
приемам всички настройки отхвърляне