El proceso de búsqueda en cualquier formato es, lees la cadena de búsqueda, cojes la raíz de búsqueda (o la raíz de ftp) y en una función lees los nombres de archivos buscando la cadena. Puedes usar similar_text o alguna función similar si quieres comparar proximidad de cadenas en vez de exactitud. Si encuentras un archivo que vale, llamas a una función externa que guarde el resultado. SI encuentras una carpeta (primero buscas coincidencias) y luego llamas a la misma función recursiva dentro de la carpeta.
Como la recursividad es un lio:
Código:
function buscar ($ruta="/", $buscar){
Si es carpeta:
-> Si encontramos coincidencia : anyadir($$ruta.$archivo,true);
-> Hayamos o no hayamos encontrado coincidencia : buscar ( $ruta.$archivo."/" , $buscar );
Si es archivo:
-> Si encontramos coincidencia : anyadir($ruta.$archivo,fasle);
}
function anyadir ($archivo, $escarpeta){
...
}
Esto es un esquema, no la solución al problema. Ni siquiera sé si la ruta raíz a la carpeta FTP es "/".
El sistema de PHP es una forma de conectarte a el FTP de manera que no tengas que estar enviando comandos al servidor (aunque ftp_exec te permita hacer esto). Me imagino que por ser más facil, tendrá más limitaciones. A lo mejor te conviene mirarte la
lista de comandos FTP y la lista de
respuestas FTP, aunque sólo sea para ampliar.