Foros del Web » Programando para Internet » PHP »

Duda con operadores logicos de OR

Estas en el tema de Duda con operadores logicos de OR en el foro de PHP en Foros del Web. hola tengo una duda con los operadores logicos que creo que es bastante sencilla pero no la se. no me funciona como deberia, o como ...
  #1 (permalink)  
Antiguo 27/09/2009, 09:46
 
Fecha de Ingreso: marzo-2005
Mensajes: 130
Antigüedad: 19 años, 8 meses
Puntos: 1
Duda con operadores logicos de OR

hola

tengo una duda con los operadores logicos que creo que es bastante sencilla
pero no la se.

no me funciona como deberia, o como yo creo que es.

no es lo mismo esto:

Código PHP:
$numero1 or $numero2 == 
que

Código PHP:
$numero1 == or $numero2 == 
porque?? como lo pongo la mas abreviado posible si lo que quiero es que si $numero1 o $numero2 es 3 que haga tal.

me pasa lo mismo con este if

Código PHP:
if ($numero1 == $numero2 or $numero1 $numero2 == or or or 10)
    {
    print 
"holaaaaa";
    } 
que explicado seria que si $numero1 es igual a $numero2 o si su suma dan 7, 8,9 o 10 haga tal.

Saludos y gracias.
__________________
Libros Web, facil y gratis.
Manuales xHTML, CSS, JAVASCRIPT, AJAX
A mi me ayudaron
http://www.librosweb.es/
  #2 (permalink)  
Antiguo 27/09/2009, 09:51
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 7 meses
Puntos: 2534
Respuesta: Duda con operadores logicos de OR

pues, el operador sirve tal cual es... solo que tu no estas aplicando la lógica, o hasta la sintaxis correcta!!

Código PHP:
$foo 3;
$bar $foo +1;

if (
$foo == OR $bar == 3// ... 
ahora, si aplicas operadores lógicos... sin hacer comparaciones, los valores distintos de cero te van a dar siempre TRUE
Código PHP:
if (OR OR $foo $bar// ... 
y eso, no tiene mucho sentido... ya que esas no son comparaciones, suerte!!
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 27/09/2009, 09:55
Avatar de loncho_rojas
Colaborador
 
Fecha de Ingreso: octubre-2008
Ubicación: En el mejor lugar del mundo
Mensajes: 2.704
Antigüedad: 16 años, 1 mes
Puntos: 175
Respuesta: Duda con operadores logicos de OR

Lo que tu quieres tiene lógica.. pero recuerda que los codigos tambien son representaciones matemáticas por decirlo asi... y debes respetar las reglas de asociacion.. ahi, dentro de tu IF, tal vez tiene lógica lo que deseas hacer, pero falta asociacion, de lo contrario el if entiende que debe complir todas esas sentencias para darla como válida:


EL TUYO
if ($numero1 == $numero2 or $numero1 + $numero2 == 7 or 8 or 9 or 10)
{
print "holaaaaa";
}


PRUEBA COMBINACIONES TIPO
Código PHP:
<?
if (($numero1 == $numero2) || ($numero1 $numero2 == or or or 10))
    {
    print 
"holaaaaa";
    } 
?>
Se entiende.. debes asociar...
(si A = B) o (A + B= 2)
__________________
Ayudo con lo que puedo en el foro, y solo en el foro.. NO MENSAJES PRIVADOS.. NO EMAILS NI SKYPE u OTROS.

Antes de hacer un TOPICO piensa si puedes hallarlo en Google o en el Buscador del Foro...
  #4 (permalink)  
Antiguo 27/09/2009, 10:04
Avatar de gjx2  
Fecha de Ingreso: agosto-2008
Ubicación: R.D
Mensajes: 1.153
Antigüedad: 16 años, 3 meses
Puntos: 139
Respuesta: Duda con operadores logicos de OR

Código php:
Ver original
  1. $numero1 = 3;
  2. $numero2 = 4;
  3. if (($numero1 == $numero2) || ($numero1 + $numero2 >= 7 and $numero1 + $numero2 <= 10) )
  4.     {
  5.     print "holaaaaa";
  6.     }
  #5 (permalink)  
Antiguo 27/09/2009, 11:14
 
Fecha de Ingreso: marzo-2005
Mensajes: 130
Antigüedad: 19 años, 8 meses
Puntos: 1
Respuesta: Duda con operadores logicos de OR

hola

al final lo he echo con un array y un in_array:

Código PHP:
if (($numero1 == 3) or ($numero2 == 3)) 
{
$validos = array(7,8,9,10);
echo 
"Hola";
    if ((
$numero1 == $numero2) || (in_array($numero1 $numero2$validos) ))
    {
    echo 
"y Adios";
    }

lo unico, que ¿no sigue quedando feo lo de if (($numero1 == 3) or ($numero2 == 3)) ?

bueno gracias.
__________________
Libros Web, facil y gratis.
Manuales xHTML, CSS, JAVASCRIPT, AJAX
A mi me ayudaron
http://www.librosweb.es/
  #6 (permalink)  
Antiguo 27/09/2009, 11:52
Avatar de rudy69  
Fecha de Ingreso: octubre-2008
Ubicación: espndeportes.com
Mensajes: 195
Antigüedad: 16 años, 1 mes
Puntos: 7
Respuesta: Duda con operadores logicos de OR

Se los puedes quitar, eso lo puedes poner en una condicion mas compleja.

Código PHP:
if ($numero1 == or $numero2 == 3)  {
    
$validos = array(7,8,9,10);
    echo 
"Hola";
    if (
$numero1 == $numero2 || in_array($numero1 $numero2$validos)) {
        echo 
"y Adios";
    }

Deberia de funcionarte, si hablas de los parentecis claro xD
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:09.