Autor Tema: Error en Script ¿Que Sera?  (Leído 337 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado eape

  • Usuario Junior
  • **
  • Mensajes: 83
  • Puntuación: 0
  • Sexo: Masculino
    • Ver Perfil
Error en Script ¿Que Sera?
« : 05 de abril de 2010, 06:13:20 am »
Buenos Días
Estimados Amigos
que el Señor Jesucristo les bendiga
Les escribo para solicitarle su colaboración en este Script ya que el mismo me esta arrojando el siguiente error:
Parse error: syntax error, unexpected '[' in C:\xampp\htdocs\xampp\Prueba\GD\prueba_imagen.php  on line 18
dicha linea es la que se encuentra resaltada  en negrita
lo que pretendo hacer es un script que agarre una imagen de cualquier tamaño y la misma la reduzca a un tamaño especifico
<?php
    $tam=getimagesize("imagen.png");
    if($tam[0] > 500 OR $tam[1] > 500)
        {
        cambiartam("imagen.png", "nuevaimagen.png", 200, 200);
        }

function cambiartam($nombre,$archivo,$ancho,$alto)
    {
    $tmp=split('.',$nombre)[1];

    if (preg_match('/jpg|jpeg|JPG/',$tmp))
        {
        $imagen=imagecreatefromjpeg($nombre);
        }
    if (preg_match('/png|PNG/',$tmp))
        {
        $imagen=imagecreatefrompng($nombre);
        }
    if (preg_match('/gif|GIF/',$tmp))
        {
        $imagen=imagecreatefromgif($nombre);
        }

    $x=imageSX($imagen);
    $y=imageSY($imagen);

    if ($x > $y)
        {
        $w=$ancho;
        $h=$y*($alto/$x);
        }

    if ($x < $y)
        {
        $w=$x*($ancho/$y);
        $h=$alto;
        }

    if ($x == $y)
        {
        $w=$ancho;
        $h=$alto;
        }


    $destino=ImageCreateTrueColor($w,$h);
    imagecopyresampled($destino,$imagen,0,0,0,0,$w,$h,$x,$y);


    if (preg_match("/png/",$tmp))
        {
        imagepng($destino,$archivo);
        }
    if (preg_match("/gif/",$tmp))
        {
        imagegif($destino,$archivo);
        }
    else
        {
        imagejpeg($destino,$archivo);
        }

    imagedestroy($destino);
    imagedestroy($imagen);
}

?>
¿Sabes el Nombre de Dios?

Desconectado homergarcia

  • Usuario Junior
  • **
  • Mensajes: 77
  • Puntuación: 0
  • Sexo: Masculino
    • Ver Perfil
    • SERVINTEC
Re: Error en Script ¿Que Sera?
« Respuesta #1 : 05 de abril de 2010, 08:06:36 am »
Según entiendo con esta linea
$tmp=split('.',$nombre)[1];
quieres colocar un punto en el caracter 1 de la cadena almacenada en $nombre, esto debe cumplir la siguiente sintaxis:

$tmp=split('.',$nombre,1);

Espero este aclarando tu duda.

Saludos.

Desconectado ashrey

  • Fanático
  • ****
  • Mensajes: 431
  • Puntuación: 7
  • Sexo: Masculino
  • Wombat Team
    • Ver Perfil
    • Blog de ABerroteran
Re: Error en Script ¿Que Sera?
« Respuesta #2 : 05 de abril de 2010, 03:00:26 pm »
Está mas que claro no? El compilador no esperaba que hay vinieran un corchete, eos se puede hacer en js o python pero no en  PHP, tienes que guardarlo en una variable primero.
Código: [Seleccionar]
<?php
//...
$tmp=split(&#39;.&#39;,$nombre);
$tmp=$tmp[1];
//...
?>

Desconectado ashrey

  • Fanático
  • ****
  • Mensajes: 431
  • Puntuación: 7
  • Sexo: Masculino
  • Wombat Team
    • Ver Perfil
    • Blog de ABerroteran
Re: Error en Script ¿Que Sera?
« Respuesta #3 : 05 de abril de 2010, 03:06:02 pm »
Por cierto para obtener la extensión de un archivo es mejor usar

$s_ext = pathinfo($s_name, PATHINFO_EXTENSION)

donde $s_name es el path del archivo

PHP de Venezuela

Re: Error en Script ¿Que Sera?
« Respuesta #3 : 05 de abril de 2010, 03:06:02 pm »

 

PHP de Venezuela on Facebook