array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'es', ), 'this' => array ( 0 => 'function.fseek.php', 1 => 'fseek', ), 'up' => array ( 0 => 'ref.filesystem.php', 1 => 'Funciones del Sistema de Archivos', ), 'prev' => array ( 0 => 'function.fscanf.php', 1 => 'fscanf', ), 'next' => array ( 0 => 'function.fstat.php', 1 => 'fstat', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'es', 'path' => 'reference/filesystem/functions/fseek.xml', ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); ?>
(PHP 4, PHP 5, PHP 7, PHP 8)
fseek — Busca sobre un puntero a un fichero
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.
Si tiene éxito, devuelve 0; de otro modo, devuelve -1.
Ejemplo #1 Ejemplo de fseek()
<?php
$fp = fopen('fichero.txt', 'r');
// leer alguna información
$data = fgets($fp, 4096);
// volver al principio del fichero
// igual que rewind($fp);
fseek($fp, 0);
?>
Nota:
Si se ha abierto un fichero en modo de adición (
a
oa+
), 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.