variable valor recibir juntos imprimir formulario ejemplos dentro codigo php if-statement condition conditional-statements

php - recibir - ¿Una forma más simple de verificar si la variable no es igual a múltiples valores de cadena?



recibir valor de variable php en text de html (4)

Códigos actuales:

<?php // See the AND operator; How do I simplify/shorten this line? if( $some_variable !== ''uk'' && $some_variable !== ''in'' ) { // Do something } ?>

Y:

<?php // See the OR operator; How do I simplify/shorten this line? if( $some_variable !== ''uk'' || $some_variable !== ''in'' ) { // Do something else } ?>

¿Hay una manera más simple (es decir, más corta) de escribir las dos condiciones?

NOTA: Sí, son diferentes, y estoy esperando diferentes formas de acortar los códigos.


Necesita una verificación de valor múltiple. Intenta usar el siguiente código:

<?php $illstack=array(...............); $val=array(''uk'',''bn'',''in''); if(count(array_intersect($illstack,$val))===count($val)){ // all of $val is in $illstack} ?>


Para su primer código, puede usar una breve modificación de la respuesta dada por @ShankarDamodaran usando in_array() :

if ( !in_array($some_variable, array(''uk'',''in''), true ) ) {

es lo mismo que:

if ( $some_variable !== ''uk'' && $some_variable !== ''in'' ) {

... pero más corto. Especialmente si compara más que solo ''uk'' y ''in''. No uso una variable adicional ( Shankar usó $ os ) sino que defino la matriz en la declaración if. Algunos pueden encontrarlo sucio, lo encuentro rápido y ordenado: D

El problema con su segundo código es que puede intercambiarse fácilmente con VERDADERO, ya que:

if (true) {

igual

if ( $some_variable !== ''uk'' || $some_variable !== ''in'' ) {

Usted está preguntando si el valor de una cadena no es A o no B. Si es A, definitivamente tampoco es B y si es B definitivamente no es A. Y si es C o literalmente cualquier otra cosa, es tampoco A y B no. Por lo tanto, esa afirmación siempre ( sin tener en cuenta la ley schrödingers aquí ) devuelve verdadera.


Puede hacer uso de in_array() en PHP.

$os = array("uk", "us"); // You can set multiple check conditions here if (in_array("uk", $os)) //Founds a match ! { echo "Got you"; }


Si está planeando crear una función en la declaración if, también le aconsejo el uso de in_array. Es mucho más limpio.

Si intentas asignar valores a las variables, puedes usar la taquigrafía if / else:

$variable_to_fill = $some_variable !== ''uk'' ? false : true;