Foros del Web » Programando para Internet » PHP »

problema con $m = max() HELP ME

Estas en el tema de problema con $m = max() HELP ME en el foro de PHP en Foros del Web. Buenas! Tengo otro problema Tengo ... Código PHP: $n1 = 11 ; $n2 = 2 ; $n3 = 5 ; $m  =  max  ( $n1 ...
  #1 (permalink)  
Antiguo 20/05/2003, 16:38
 
Fecha de Ingreso: mayo-2003
Mensajes: 43
Antigüedad: 20 años, 10 meses
Puntos: 0
problema con $m = max() HELP ME

Buenas!

Tengo otro problema

Tengo ...

Código PHP:
$n1=11;
$n2=2;
$n3=5;

$m max ($n1,$n2,$n3);
echo 
$m
Me tendria que imprimir el numero mayor verdad? es decir 11, pero me imprime 5.

Hice varias pruebas y me di cuenta que solo toma el primer digito, o sea que a 11 lo toma como 1 y por lo tanto el mayor es 5, como arreglaria esto?

PD: talvez ayude si digo que no defino directamente $n1=11 si no q lo saco de un txt

Código PHP:
<?
$file
="base.txt";
$file2=file($file); 
$lineas=count($file2);
$n1=$file2[0]; 
$n2=$file2[1]; 
$n3=$file2[2];
?>
Cualquier ayuda o tan solo una pista es bienvenida

Última edición por TeQuieroAndrea; 20/05/2003 a las 16:43
  #2 (permalink)  
Antiguo 20/05/2003, 19:02
 
Fecha de Ingreso: agosto-2002
Ubicación: Colón - Entre Rios - Argentina
Mensajes: 647
Antigüedad: 21 años, 7 meses
Puntos: 8
Prueba aplicndole trim() y intval a cada valor...
Código PHP:
$n1=intval(trim($file2[0])); 
Si no no se que puede ser.
Recuerda que a max() puedes pasarle tambien un solo argumento siempre y cuando sea un array. Teniendo en cuenta esto otra "posible" solucion seria:
Código PHP:
$file="base.txt";
$file2=file($file); 
$lineas=count($file2);
$array array_map("trim"$file2);
$array array_map("intval"$array );
echo 
max($array); 
ejjejej, no se si anda, es "al vuelo"!
Un saludo.
  #3 (permalink)  
Antiguo 20/05/2003, 23:33
 
Fecha de Ingreso: mayo-2003
Ubicación: Medellín
Mensajes: 187
Antigüedad: 20 años, 10 meses
Puntos: 0
No se realmente que es lo que pasa con tu php, pero acabo de probarlo en mi sistema el siguiente código:

Código PHP:
<?php
$n1
=11;
$n2=2;
$n3=5;

$m max ($n1,$n2,$n3);
echo 
$m;
?>
Y me imprimió 11... Así que no sé cual pueda ser tu problem.a
__________________
- Julian
http://www.laneros.com
  #4 (permalink)  
Antiguo 21/05/2003, 01:55
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 21 años, 9 meses
Puntos: 16
Hola,

Usa el intval() para convertir esos valores a enteros, sino PHP los toma como cadenas de texto y realiza la ordenacion usando los criterios de cadenas.

Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
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 04:20.