⊗ppSpPDNP 62 of 83 menu

Automatisch aanhalingstekenen rond placeholders in PDO in PHP

Technisch gezien voorziet PDO alle ingevoegde waarden van aanhalingstekenen, waarbij het ze als strings behandelt, zelfs als het feitelijk getallen zijn. Dit is toegestaan door de SQL-syntaxis. Daarom hoeven placeholders niet van aanhalingstekenen te worden voorzien als je een stringwaarde hebt.

Laten we een voorbeeld bekijken. Stel we hebben een string opgeslagen in een variabele:

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

Een positionele placeholder hoeft in dit geval niet in aanhalingstekenen te worden gezet:

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

Een benoemde placeholder hoeft ook niet in aanhalingstekenen te worden gezet:

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

Het feit dat in de query altijd strings staan, kan soms toch leiden tot problemen met de SQL-syntaxis - daar waar volgens de syntaxis verplicht getallen moeten staan. In dat geval kan men gebruikmaken van een alternatieve manier om parameters te binden, die we in de volgende lessen zullen behandelen.

Nederlands
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Wij gebruiken cookies voor de werking van de site, analyse en personalisatie. De verwerking van gegevens gebeurt volgens het Privacybeleid.
alles accepteren aanpassen weigeren