<?php
include_once $_SERVER['DOCUMENT_ROOT'] . '/include/shared-manual.inc';
$TOC = array();
$TOC_DEPRECATED = array();
$PARENTS = array();
include_once dirname(__FILE__) ."/toc/ref.filesystem.inc";
$setup = array (
  'home' => 
  array (
    0 => 'index.php',
    1 => 'PHP Manual',
  ),
  'head' => 
  array (
    0 => 'UTF-8',
    1 => 'es',
  ),
  'this' => 
  array (
    0 => 'function.fseek.php',
    1 => 'fseek',
    2 => 'Modifica la posici&oacute;n del puntero de archivo',
  ),
  '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',
  ),
  'history' => 
  array (
  ),
);
$setup["toc"] = $TOC;
$setup["toc_deprecated"] = $TOC_DEPRECATED;
$setup["parents"] = $PARENTS;
manual_setup($setup);

contributors($setup);

?>
<div id="function.fseek" class="refentry">
 <div class="refnamediv">
  <h1 class="refname">fseek</h1>
  <p class="verinfo">(PHP 4, PHP 5, PHP 7, PHP 8)</p><p class="refpurpose"><span class="refname">fseek</span> &mdash; <span class="dc-title">Modifica la posición del puntero de archivo</span></p>

 </div>

 <div class="refsect1 description" id="refsect1-function.fseek-description">
  <h3 class="title">Descripción</h3>
  <div class="methodsynopsis dc-description">
   <span class="methodname"><strong>fseek</strong></span>(<span class="methodparam"><span class="type"><a href="language.types.resource.php" class="type resource">resource</a></span> <code class="parameter">$stream</code></span>, <span class="methodparam"><span class="type"><a href="language.types.integer.php" class="type int">int</a></span> <code class="parameter">$offset</code></span>, <span class="methodparam"><span class="type"><a href="language.types.integer.php" class="type int">int</a></span> <code class="parameter">$whence</code><span class="initializer"> = <strong><code><a href="filesystem.constants.php#constant.seek-set">SEEK_SET</a></code></strong></span></span>): <span class="type"><a href="language.types.integer.php" class="type int">int</a></span></div>

  <p class="para rdfs-comment">
   Modifica el cursor de posición en el archivo <code class="parameter">stream</code>.
   La nueva posición, medida en bytes, desde el inicio del archivo,
   se obtiene sumando la distancia <code class="parameter">offset</code>
   a la posición <code class="parameter">whence</code>.
  </p>
   <p class="para">
   En general, es posible desplazarse más allá del final del flujo (eof); si se
   escriben datos en este caso, el espacio entre el final del flujo y
   la posición actual será rellenado con bytes nulos. Sin embargo, algunos flujos no soportan
   este comportamiento, en particular cuando el espacio de almacenamiento subyacente es de
   tamaño fijo.
  </p>
 </div>


 <div class="refsect1 parameters" id="refsect1-function.fseek-parameters">
  <h3 class="title">Parámetros</h3>
  <p class="para">
   <dl>
    
     <dt><code class="parameter">stream</code></dt>
     <dd>
      <p class="para">Un puntero del sistema de archivos de tipo <span class="type"><a href="language.types.resource.php" class="type resource">resource</a></span>
que es habitualmente creado utilizando la función <span class="function"><a href="function.fopen.php" class="function">fopen()</a></span>.</p>
     </dd>
    
    
     <dt><code class="parameter">offset</code></dt>
     <dd>
      <p class="para">
       La posición.
      </p>
      <p class="para">
       Para desplazarse a una posición antes del final del archivo,
       debe pasarse un valor negativo en el <code class="parameter">offset</code> y
       el parámetro <code class="parameter">whence</code> debe establecerse
       en <strong><code><a href="filesystem.constants.php#constant.seek-end">SEEK_END</a></code></strong>.
      </p>
     </dd>
    
    
     <dt><code class="parameter">whence</code></dt>
     <dd>
      <p class="para">
       Los valores posibles para <code class="parameter">whence</code> son :
       <ul class="simplelist">
        <li><strong><code><a href="filesystem.constants.php#constant.seek-set">SEEK_SET</a></code></strong> - Establecer la posición igual a <code class="parameter">offset</code> bytes desde el inicio del archivo.</li>
        <li><strong><code><a href="filesystem.constants.php#constant.seek-cur">SEEK_CUR</a></code></strong> - Establecer la posición en el lugar actual más <code class="parameter">offset</code> bytes.</li>
        <li><strong><code><a href="filesystem.constants.php#constant.seek-end">SEEK_END</a></code></strong> - Establecer la posición al final del archivo más <code class="parameter">offset</code> bytes.</li>
       </ul>
      </p>
     </dd>
    
   </dl>
  </p>
 </div>


 <div class="refsect1 returnvalues" id="refsect1-function.fseek-returnvalues">
  <h3 class="title">Valores devueltos</h3>
  <p class="para">
   En caso de éxito, devuelve <code class="literal">0</code>;
   de lo contrario, devuelve <code class="literal">-1</code>.
  </p>
  <div class="warning"><strong class="warning">Advertencia</strong>
   <p class="simpara">
    Esta función ha sido creada para imitar la función del mismo nombre en lenguaje C.
    Tenga en cuenta los valores de retorno, ya que difieren de lo que podría esperarse en PHP.
   </p>
  </div>
 </div>


 <div class="refsect1 examples" id="refsect1-function.fseek-examples">
  <h3 class="title">Ejemplos</h3>
  <p class="para">
   <div class="example" id="example-1">
    <p><strong>Ejemplo #1 Ejemplo con <span class="function"><strong>fseek()</strong></span></strong></p>
    <div class="example-contents">
<div class="phpcode"><code><span style="color: #000000"><span style="color: #0000BB">&lt;?php<br /><br />$fp </span><span style="color: #007700">= </span><span style="color: #0000BB">fopen</span><span style="color: #007700">(</span><span style="color: #DD0000">'somefile.txt'</span><span style="color: #007700">, </span><span style="color: #DD0000">'r'</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">// lee algunos datos<br /></span><span style="color: #0000BB">$data </span><span style="color: #007700">= </span><span style="color: #0000BB">fgets</span><span style="color: #007700">(</span><span style="color: #0000BB">$fp</span><span style="color: #007700">, </span><span style="color: #0000BB">4096</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">// vuelve al inicio del archivo<br />// equivalente a rewind($fp);<br /></span><span style="color: #0000BB">fseek</span><span style="color: #007700">(</span><span style="color: #0000BB">$fp</span><span style="color: #007700">, </span><span style="color: #0000BB">0</span><span style="color: #007700">);<br /><br /></span><span style="color: #0000BB">?&gt;</span></span></code></div>
    </div>

   </div>
  </p>
 </div>


 <div class="refsect1 notes" id="refsect1-function.fseek-notes">
  <h3 class="title">Notas</h3>
  <blockquote class="note"><p><strong class="note">Nota</strong>: 
   <p class="para">
    Si abre el archivo con el modo <code class="literal">a</code> o
    <code class="literal">a+</code>, todos los datos que escriba en el archivo
    siempre serán añadidos, sin importar la posición en el archivo.
   </p>
  </p></blockquote>
  <blockquote class="note"><p><strong class="note">Nota</strong>: 
   <p class="para">
    No todos los flujos soportan el desplazamiento. Para aquellos que no lo soportan,
    el desplazamiento hacia adelante se realizará leyendo y liberando los bytes; otras formas
    de desplazamiento fallarán.
   </p>
  </p></blockquote>
 </div>


 <div class="refsect1 seealso" id="refsect1-function.fseek-seealso">
  <h3 class="title">Ver también</h3>
  <p class="para">
   <ul class="simplelist">
    <li><span class="function"><a href="function.ftell.php" class="function" rel="rdfs-seeAlso">ftell()</a> - Devuelve la posici&oacute;n actual del puntero de archivo</span></li>
    <li><span class="function"><a href="function.rewind.php" class="function" rel="rdfs-seeAlso">rewind()</a> - Reemplaza el puntero de fichero al inicio</span></li>
   </ul>
  </p>
 </div>


</div><?php manual_footer($setup); ?>