![Antiguo](http://static.forosdelweb.com/fdwtheme/images/statusicon/post_old.gif)
27/09/2006, 18:13
|
![Avatar de seyacat](http://static.forosdelweb.com/customavatars/avatar148487_1.gif) | | | Fecha de Ingreso: agosto-2006
Mensajes: 382
Antigüedad: 18 años, 5 meses Puntos: 0 | |
Si pues el secreto esta en if(strpos ($li,$ext))
aqui un ejemplo donde te hago un arreglo de dos niveles.
<?php
$extensiones = array ( 'jpg', 'png', 'gif' );
$lista = array ( 'foto1.jpg', 'grafica2.gif', 'bolitas.png', 'llanta.png', 'alfo.jpg', 'otro.jpg','este.dec' );
$matriz = array();
foreach($lista as $li){
$existe = 0;
foreach($extensiones as $ext){
if(strpos ($li,$ext)){
$matriz[$ext][]= $li;
$existe = 1;
}
}
if(!$existe){
$matriz["desconocido"][]= $li;
}
}
print_r($matriz);
?>
el problema aqui es que si tienes un achivo que se llame junitojpg.gif vas a tener problemas.
Puedes pare ello buscar no solo la extension sino el ".".$exension
talves un preg_match pueda ayudar si quieres complicarte
<?php
$extensiones = array ( 'jpg', 'png', 'gif' );
$lista = array ( 'foto1.jpg', 'grafica2.gif', 'bolitas.png', 'llanta.png', 'alfo.jpg', 'otro.jpg','este.dec','juanitopng.jpg' );
$matriz = array();
foreach($lista as $li){
$existe = 0;
foreach($extensiones as $ext){
if(preg_match("@[^.]*[\.]{1}$ext@Ux",$li)){
$matriz[$ext][]= $li;
$existe = 1;
}
}
if(!$existe){
$matriz["desconocido"][]= $li;
}
}
print_r($matriz);
?>
Última edición por seyacat; 27/09/2006 a las 18:22 |