php - una - que poner en un curriculum sin experiencia




PHP-y/o palabras clave (3)

Es && lo mismo que "y", y es || lo mismo que "o" en PHP?

He hecho algunas pruebas, y parece que se comportan igual. ¿Hay alguna diferencia?

Si no, ¿hay algún otro signo de PHP que tenga palabras equivalentes y cree que hace que el código sea más fácil de leer?


La diferencia está en la precedencia . ¡Pero no solo comparado el uno con el otro!

En la mayoría de los casos no le importará, pero hay casos específicos en los que tiene que retroceder un paso y observar el panorama general. Toma esto, por ejemplo:

// The result of the expression (true && false) is assigned to $g
// Acts like: ($g = (true && false))
$g = true && false;

// The constant true is assigned to $h before the "and" operation occurs
// Acts like: (($h = true) and false)
$h = true and false;

var_dump($g, $h);

Esto producirá, respectivamente:

bool(false)
bool(true)

En otras palabras, && tiene una preferencia mayor que = , que tiene una precedencia mayor que and , como se indica en http://php.net/manual/en/language.operators.precedence.php . (Se menciona en otras respuestas, pero creo que vale la pena detallar, ya que un mal uso puede conducir a errores lógicos)

Espero que te pueda ayudar. Puede encontrar más en http://php.net/manual/en/language.operators.logical.php


Lo que me molesta es:

echo (false and false ? true : true);
// (empty/false)

Puede adivinar que solo existe la salida posible de "1" (verdadero) ya que no hay ningún caso que pueda generar un resultado falso ... ... pero será "" (falso).

Usar && como operador en este caso satisface al menos mis expectativas:

echo (false && false ? true : true);
// 1

Entonces, en algunos casos, el uso es importante.






conditional