Hola,
Cita:
Iniciado por GatorV
stristr, es más lento a hacer la búsqueda en el arreglo directamente. De hecho el mismo manual lo sugiere:
Saludos.
Realmente no me refería a ningún tipo de optimización, solamente que el código era simple y claro, pero ahora que lo mencionas ... en mi código no hay ningún arreglo, es un simple String. Y nop, el 'overhead' del manejar un arreglo va a ser mucho más complejo que el manejo de dos Strings.
De cualquier forma ... la comparación char a char ... tiene que existir obligatoriamente. Y en mi caso no salta de lugar en lugar ... lo realizar directamente en un lugar secuencial en la memoria.
Puedes revisar el código fuente de PHP para ver la cantidad de instrucciones que requiere una comparación de 2 Strings, incluyendo que las convierte a 'lower case' antes de la comparación.
Cita:
Iniciado por masterojitos
si declaro la cadena antes que la extension no la reconoce?? es decir:
Código PHP:
<?php
$validos=" return ('$ext'=='jpg' or '$ext' == 'gif' or '$ext' == 'png'? true: null); ";
$ext="jpg";
if(eval($validos)){
echo "imagen";
}else{
echo "pdf";
}
?>
En ese caso la expansión de variables se lleva a cabo en la asignación de $validos, tienes que crear el String $validos, de manera que se evalúe después de la asignación.
Código:
$validos=' return $ext == "jpg" or $ext == "gif" or $ext == "png" ; ';
Saludos,