¿Qué significa “=>” en PHP?

2 minutos de lectura

1646957586 429 ¿Que significa en PHP
Léo Léopold Hertz 준영

Lo que hace el => operador significa en el siguiente código?

foreach ($user_list as $user => $pass)

El código es un comentario en PHP.net. El usuario no especifica el valor de $user_list, $user o $pass. normalmente veo eso => significa igual o mayor que.

Sin embargo, no estoy seguro de su propósito aquí porque no está asignado. Leí el código como

  1. procesar una lista de usuarios en números enteros
  2. tal que el valor de cada usuario sea igual o mayor que la contraseña

Lo anterior no tiene sentido para mí.

  • Actualicé mi respuesta, olvidé la palabra clave ‘matriz’.

    – Tyler Carter

    6 de agosto de 2009 a las 22:41

  • Relacionado: stackoverflow.com/questions/4758791/…

    – Marc Gravell

    21 de enero de 2011 a las 23:54

  • @Masi Error de mi lado. Lo siento.

    – kapa

    8 de junio de 2012 a las 7:42

  • Diría => asigna un valor a la matriz y usa una clave como índice. Entonces, en su caso, la matriz a la que llama $user_list usa $user como clave de índice. El bucle foreach realiza un bucle y asigna a cada elemento de esa matriz el valor $pasar.

    – Julian

    24 de abril de 2014 a las 9:19

1646957587 132 ¿Que significa en PHP
vagabundo

=> es el separador de matrices asociativas. En el contexto de ese bucle foreach, asigna la clave de la matriz a $user y el valor a $pass.

Ejemplo:

$user_list = array(
    'dave' => 'apassword',
    'steve' => 'secr3t'
);

foreach ($user_list as $user => $pass) {
    echo "{$user}'s pass is: {$pass}\n";
}
// Prints: 
// "dave's pass is: apassword"
// "steve's pass is: secr3t"

Tenga en cuenta que esto también se puede usar para matrices indexadas numéricamente.

Ejemplo:

$foo = array('car', 'truck', 'van', 'bike', 'rickshaw');
foreach ($foo as $i => $type) {
    echo "{$i}: {$type}\n";
}
// prints:
// 0: car
// 1: truck
// 2: van
// 3: bike
// 4: rickshaw

1646957587 701 ¿Que significa en PHP
tyler carter

Significa asignar la clave a $usuario y la variable a $pasar

Cuando asignas una matriz, lo haces así

$array = array("key" => "value");

Utiliza el mismo símbolo para procesar matrices en sentencias foreach. El ‘=>’ vincula la clave y el valor.

De acuerdo con la Manual PHPlos pares clave/valor creados ‘=>’.

Además, Igual o Mayor que es al revés: ‘>=’. En PHP, el signo mayor o menor siempre va primero: ‘>=’, ‘<='.

Y solo como nota al margen, excluir el segundo valor no funciona como crees que lo haría. En lugar de solo darte la clave, en realidad solo te da un valor:

$array = array("test" => "foo");

foreach($array as $key => $value)
{
    echo $key . " : " . $value; // Echoes "test : foo"
}

foreach($array as $value)
{
    echo $value; // Echoes "foo"
}

  • Su último ejemplo tiene algo mal, ya que me sale el mensaje de error Parse error: syntax error, unexpected T_DOUBLE_ARROW in /var/www/cha.php on line 2.

    – Léo Léopold Hertz 준영

    6 de agosto de 2009 a las 22:34

  • Vaya, se olvidó de agregar la palabra clave de matriz. Trata eso

    – Tyler Carter

    6 de agosto de 2009 a las 22:40

1646957587 935 ¿Que significa en PHP
Pascal MARTÍN

Código como “a => b” significa, para una matriz asociativa (algunos idiomas, como Perlsi no recuerdo mal, llámalos “hash”)que ‘a’ es una clave y ‘b’ un valor.

Es posible que desee echar un vistazo a la documentación de, al menos:

Aquí, tienes una matriz, llamada $user_liste iterarás sobre él, obteniendo, para cada línea, la clave de la línea en $usery el valor correspondiente en $pass.

Por ejemplo, este código:

$user_list = array(
    'user1' => 'password1',
    'user2' => 'password2',
);

foreach ($user_list as $user => $pass)
{
    var_dump("user = $user and password = $pass");
}

Obtendrá esta salida:

string 'user = user1 and password = password1' (length=37)
string 'user = user2 and password = password2' (length=37)

(Estoy usando var_dump para generar una buena salida, que facilite la depuración; para obtener una salida normal, usaría echo)

“Igual o mayor” es al revés: “mayor o igual”, que se escribe, en PHP, así; “>=”

Lo mismo para la mayoría de lenguajes derivados de C: C++, JAVA, PHP,…

Como consejo: si recién está comenzando con PHP, definitivamente debería pasar algún tiempo (tal vez un par de horas, tal vez incluso medio día o incluso un día entero) repasando algunas partes del manual 🙂

¡Te ayudaría mucho!

1646957588 843 ¿Que significa en PHP
erizos

Una matriz en PHP es un mapa de claves a valores:

$array = array();
$array["yellow"] = 3;
$array["green"] = 4;

Si desea hacer algo con cada par clave-valor en su matriz, puede usar el foreach estructura de control:

foreach ($array as $key => $value)

La variable $array es la matriz que utilizará. Las variables $clave y $valor contendrán un par clave-valor en cada iteración del foreach lazo. En este ejemplo, primero contendrán “amarillo” y 3, luego “verde” y 4.

Puede usar una notación alternativa si no le importan las claves:

foreach ($array as $value)

Las matrices en PHP son matrices asociativas (también conocidas como diccionarios o hashes) de forma predeterminada. Si no asigna explícitamente una clave a un valor, el intérprete lo hará en silencio por usted. Entonces, la expresión que tienes ahí itera a través de $user_listhaciendo que la clave esté disponible como $user y el valor disponible como $pass como variables locales en el cuerpo del foreach.

1646957588 359 ¿Que significa en PHP
iazul

$user_list es una matriz de datos que, cuando se repiten, se pueden dividir en su nombre y valor.

En este caso su nombre es $user y su valor es $pass.

¿Ha sido útil esta solución?

Esta web utiliza cookies propias y de terceros para su correcto funcionamiento y para fines analíticos y para mostrarte publicidad relacionada con sus preferencias en base a un perfil elaborado a partir de tus hábitos de navegación. Al hacer clic en el botón Aceptar, acepta el uso de estas tecnologías y el procesamiento de tus datos para estos propósitos. Configurar y más información
Privacidad