fseek

(PHP 4, PHP 5, PHP 7)

fseekBusca sobre un puntero a un fichero

Descripción

fseek ( resource $handle , int $offset [, int $whence = SEEK_SET ] ) : int

Establece el indicador de posición de fichero para el fichero referenciado por handle. La nueva posición, medida en bytes desde el inicio del fichero, se obtiene añadiendo offset a la posición especificada por whence.

En general, se permite la búsqueda pasada la marca de fin de fichero; si entonces se escribe información, las lecturas en cualquier región no escrita entre la marca de fin del fichero y la posición buscada producirán bytes con valor 0. Sin embargo, ciertos flujos no pueden soportar este comportamiento, especialmente cuando tienen un tamaño de almacenamiento fijo subyacente.

Parámetros

handle

Resource que apunta a un fichero del sitema que normalmente es creado usando fopen().

offset

El índice.

Para moverse a una posición anterior a la marca de fin del fichero, necesita pasar un valor negativo a offset y establecer whence a SEEK_END.

whence

Los valores de whence son:

  • SEEK_SET - Establece la posición igual a offset bytes.
  • SEEK_CUR - Establece la posición a la ubicación actual más offset.
  • SEEK_END - Establece la posición a la marca de final de fichero más offset.

Valores devueltos

Si tiene éxito, devuelve 0; de otro modo, devuelve -1.

Ejemplos

Ejemplo #1 Ejemplo de fseek()

<?php

$fp 
fopen('fichero.txt''r');

// leer alguna información
$data fgets($fp4096);

// volver al principio del fichero
// igual que rewind($fp);
fseek($fp0);

?>

Notas

Nota:

Si se ha abierto un fichero en modo de adición (a o a+), cualquier información que se escriba en el fichero será siempre añadida, sin importar la posición, y el resutado de llamar a fseek() será indefinido.

Nota:

No todos los flujos soportan búsqueda. Para esos que no soportan búsqueda, la búsqueda hacia adelante desde la posición actual se lleva a cabo leyendo y descartando información; otras formas de búsqueda fallarán.

Ver también

  • ftell() - Devuelve la posición de lectura/escritura actual del puntero a un fichero
  • rewind() - Rebobina la posición de un puntero a un archivo