PHP 8.5.0 Alpha 1 available for testing

svn_ls

(PECL svn >= 0.1.0)

svn_lsDevuelve la lista del contenido de un directorio de un repositorio, opcionalmente en la revisión proporcionada

Descripción

svn_ls(
    string $repos_url,
    int $revision_no = SVN_REVISION_HEAD,
    bool $recurse = false,
    bool $peg = false
): array

Esta función consulta la URL del repositorio y devuelve una lista de los ficheros y directorios, opcionalmente desde una revisión específica. Es el equivalente al comando svn list $repos_url[@$revision_no].

Nota:

Esta función no funciona con copias de trabajo. repos_url DEBE ser una URL de repositorio.

Parámetros

url

URL del repositorio, por ejemplo http://www.example.com/svnroot. Para acceder a un repositorio local Subversion a través del sistema de ficheros, utilice el siguiente URI: file:///home/user/svn-repos.

revision

Número de revisión a utilizar. Si se omite, se utilizará HEAD.

recurse

Activa la recursividad.

Valores devueltos

En caso de éxito, esta función devuelve un array de ficheros, listados de la siguiente forma:

[0] => Array
    (
        [created_rev] => número de revisión de la última edición
        [last_author] => nombre del autor de la última edición
        [size] => tamaño del fichero
        [time] => fecha y hora de la última edición, en formato 'M d H:i' o 'M d Y', según la antigüedad del fichero
        [time_t] => timestamp Unix de la última edición
        [name] => nombre del fichero o directorio
        [type] => tipo, puede ser 'file' o 'dir'
    )
[1] => ...

Ejemplos

Ejemplo #1 Ejemplo con svn_ls()

<?php
print_r
( svn_ls('http://www.example.com/svnroot/') );
?>

El resultado del ejemplo sería algo similar a:

Array
(
    [0] => Array
        (
            [created_rev] => 20
            [last_author] => Joe
            [size] => 0
            [time] => Apr 02 09:28
            [time_t] => 1175520529
            [name] => tags
            [type] => dir
        )
    [1] => Array
        (
            [created_rev] => 23
            [last_author] => Bob
            [size] => 0
            [time] => Apr 02 15:15
            [time_t] => 1175541322
            [name] => trunk
            [type] => dir
        )
)

Notas

Advertencia

Esta función ha sido declarada EXPERIMENTAL. Su funcionamiento, nombre y la documentación que le acompaña puede cambiar sin previo aviso en futuras versiones de PHP. Utilícela bajo su propia responsabilidad.

add a note

User Contributed Notes 1 note

up
0
php thereatthe bluedream dotty tv
13 years ago
Be aware that the function will condition the path for you; do not do it yourself or you will have resulting errors.

Ex: that paths with spaces in them do NOT need the escaping slash
<?php
svn_ls
('file:///var/svn/myrepo/dirA/another dir'); //will work->happiness
svn_ls('file:///var/svn/myrepo/dirA/another\ dir'); //will fail
?>
Warning: svn_ls(): svn error(s) occured 160013 (Filesystem has no item) URL 'file:///var/svn/myrepo/dirA/another\ dir' non-existent in that revision in file.php on line 42
To Top