Este script basado en cadenas me toma la url que le ponga y de ella me toma en nombre del archivo de la url, tomando eso se extrae el title de dicho archivo para poder sacar un texto que servira para el texto del link, obiamente como muestra en el codigo este texto que se extrae del title del contenido de dicha url, se obtiene en base al nombre del mismo archivo, por ejemplo, si el archivo de la url se llama http://music-strike.net/a/alternativo/nickelback.php ps en el title del contenido de este archivo, busca la palabra nickelback y este se usa para el link que se va a generar.
todo el script este esta hecho en una sola funcion para poder usarlo con cualquier url.
Código PHP:
<?php
function title($url, $inicio){
$enlace = str_replace(".php"," ", $url);
$final = strlen($enlace);
$a = substr($enlace,$inicio,$final);
$inicio_title = "<title>";
$final_title = "</title>";
$source = @file_get_contents($url)or die('se ha producido un error');
$posicion_inicio = strpos($source, $inicio_title) + strlen($inicio_title);
$posicion_final = strpos($source, $final_title) - $posicion_inicio;
$found_text = substr($source, $posicion_inicio, $posicion_final);
$carac_artista = strlen($a);
$inicio_artista = strpos($found_text,$a);
$title = substr($found_text,$inicio_artista,$carac_artista);
return $title;
}
?>
Lo quier quiero es que todas las urls de un archivo se tomen y se pasen por la funcion anterior para generar automaticamente los links con cada archivo, cosa que estos links se usen como menu de acceso a todos esos archivos de dicho directorio.
El script para obtener las urls de todos los archivos de un directorio es este:
Código PHP:
<?php
include("z_funcion-link.php");
$inicio = "38"; ====>(este unicio es un dato requerido para usar en la funcion del include)
//---Obtener variables pasadas por GET
$path = !isset($_GET['path']) ? './' : $_GET['path'];
$files = !isset($_GET['files']) ? '\w{3,4}' : '(' . implode(')|(', explode('@', $_GET['files'])) . ')';
$order = !isset($_GET['order']) ? 'name' : $_GET['order'];
//---Arreglo donde se guardarán todos los archivos
$store = array();
//---Regular Expression
$reg = '/\w*+.+'. $files .'$/';
$sum = 0;
//---Si es un directorio
if(is_dir($path)){
//---Abrir el directorio
if($gd = opendir($path)){
//---Recorrer todos los archivos del directorio
while(($archivo = readdir($gd)) !== false){
//---Si se cumple la expresión regular
if(preg_match($reg, $archivo) && !is_dir($archivo)){
$comple = "http://music-strike.net/a/alternativo/";
$url = $comple . $archivo;
echo $url;
}
}
}
}
?>
AHORA, lo que yo quiero es pasar todas las urls esas pasen por la funcion title que es la que genera los links con la url que se le asigne, pero cuando hago la llamada a la funcion con la variable $url no me sale nada, no se cual sera el lio, pero intente con un array hacia la funcion incluida con la variable o bien con un while pero aun asi no pude con ello..
Al final estuve de salida ahora y espero que puedan ayudarme. denme opciones por favor.
Gracias de Antemano.