⊗ppSpPDNP 61 of 83 menu

Marcadores de posición nombrados en PDO en PHP

Para mayor comodidad, se pueden utilizar marcadores de posición nombrados, en los que el orden de las variables en el array no es importante. Veamos cómo trabajar con ellos.

Supongamos que tenemos las siguientes variables:

<?php $min = 1; $max = 5; ?>

Hagamos una consulta SQL usando marcadores de posición nombrados. Su sintaxis es: dos puntos seguidos del nombre del marcador de posición. Utilicemos ellos en la consulta:

<?php $sql = 'SELECT * FROM users WHERE id>:min and id<:max'; ?>

Preparamos la consulta:

<?php $res = $pdo->prepare($sql); ?>

Ejecutamos la consulta, pasando como parámetros un array asociativo, donde las claves serán los nombres de los marcadores de posición en la consulta SQL, y los valores - las variables correspondientes:

<?php $res->execute([ 'min' => $min, 'max' => $max ]); ?>

Podemos ver el resultado:

<?php while ($row = $res->fetch()) { var_dump($row); } ?>

Juntemos todo y obtendremos el siguiente código:

<?php $min = 1; $max = 5; $sql = 'SELECT * FROM users WHERE id>:min and id<:max'; $res = $pdo->prepare($sql); $res->execute([ 'min' => $min, 'max' => $max ]); while ($row = $res->fetch()) { var_dump($row); } ?>

Se da la variable:

<?php $age = 30; ?>

Encuentre todos los usuarios cuya edad sea igual al valor especificado en la variable.

Se dan las variables:

<?php $age1 = 20; $age2 = 30; ?>

Encuentre todos los usuarios cuya edad esté en el rango definido por los valores de las variables.

Se dan las variables:

<?php $age1 = 20; $age2 = 30; $salary1 = 1000; $salary2 = 2000; ?>

Encuentre todos los usuarios cuya edad Y salario estén en el rango definido por los valores de las variables.

Español
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Usamos cookies para el funcionamiento del sitio, análisis y personalización. El procesamiento de datos se realiza de acuerdo con la Política de privacidad.
aceptar todas configurar rechazar