<?php
include_once $_SERVER['DOCUMENT_ROOT'] . '/include/shared-manual.inc';
$TOC = array();
$TOC_DEPRECATED = array();
$PARENTS = array();
include_once dirname(__FILE__) ."/toc/book.filter.inc";
$setup = array (
  'home' => 
  array (
    0 => 'index.php',
    1 => 'PHP Manual',
  ),
  'head' => 
  array (
    0 => 'UTF-8',
    1 => 'es',
  ),
  'this' => 
  array (
    0 => 'filter.constants.php',
    1 => 'Constantes predefinidas',
    2 => 'Constantes predefinidas',
  ),
  'up' => 
  array (
    0 => 'book.filter.php',
    1 => 'Filter',
  ),
  'prev' => 
  array (
    0 => 'filter.configuration.php',
    1 => 'Configuraci&oacute;n en tiempo de ejecuci&oacute;n',
  ),
  'next' => 
  array (
    0 => 'filter.examples.php',
    1 => 'Ejemplos',
  ),
  'alternatives' => 
  array (
  ),
  'source' => 
  array (
    'lang' => 'es',
    'path' => 'reference/filter/constants.xml',
  ),
  'history' => 
  array (
  ),
);
$setup["toc"] = $TOC;
$setup["toc_deprecated"] = $TOC_DEPRECATED;
$setup["parents"] = $PARENTS;
manual_setup($setup);

contributors($setup);

?>
<div id="filter.constants" class="appendix">
 <h1 class="title">Constantes predefinidas</h1>

 <p class="simpara">Estas constantes son definidas por esta
extensión, y solo están disponibles si esta extensión ha sido compilada con
PHP, o bien cargada en tiempo de ejecución.</p>

 <dl>
  <strong class="title">Constantes de entrada</strong>
  <p class="simpara">
   Estas constantes son utilizadas por
   <span class="function"><a href="function.filter-input.php" class="function">filter_input()</a></span> y
   <span class="function"><a href="function.filter-input-array.php" class="function">filter_input_array()</a></span>.
  </p>
  
   <dt id="constant.input-post">
    <strong><code><a href="filter.constants.php#constant.input-post">INPUT_POST</a></code></strong>
    (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
   </dt>
   <dd>
    <span class="simpara">
     Variables <a href="reserved.variables.post.php" class="link">POST</a>.
    </span>
   </dd>
  
  
   <dt id="constant.input-get">
    <strong><code><a href="filter.constants.php#constant.input-get">INPUT_GET</a></code></strong>
    (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
   </dt>
   <dd>
    <span class="simpara">
     Variables <a href="reserved.variables.get.php" class="link">GET</a>.
    </span>
   </dd>
  
  
   <dt id="constant.input-cookie">
    <strong><code><a href="filter.constants.php#constant.input-cookie">INPUT_COOKIE</a></code></strong>
    (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
   </dt>
   <dd>
    <span class="simpara">
     Variables <a href="reserved.variables.cookies.php" class="link">COOKIE</a>.
    </span>
   </dd>
  
  
   <dt id="constant.input-env">
    <strong><code><a href="filter.constants.php#constant.input-env">INPUT_ENV</a></code></strong>
    (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
   </dt>
   <dd>
    <span class="simpara">
     Variables <a href="reserved.variables.environment.php" class="link">ENV</a>.
    </span>
   </dd>
  
  
   <dt id="constant.input-server">
    <strong><code><a href="filter.constants.php#constant.input-server">INPUT_SERVER</a></code></strong>
    (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
   </dt>
   <dd>
    <span class="simpara">
     Variables <a href="reserved.variables.server.php" class="link">SERVER</a>.
    </span>
   </dd>
  
  
   <dt id="constant.input-session">
    <strong><code><a href="filter.constants.php#constant.input-session">INPUT_SESSION</a></code></strong>
     (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
   </dt>
   <dd>
    <span class="simpara">
     Variables <a href="reserved.variables.session.php" class="link">SESSION</a>.
     (Eliminado a partir de PHP 8.0.0; no estaba implementado previamente)
    </span>
   </dd>
  
  
   <dt id="constant.input-request">
    <strong><code><a href="filter.constants.php#constant.input-request">INPUT_REQUEST</a></code></strong>
     (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
   </dt>
   <dd>
    <span class="simpara">
     Variables <a href="reserved.variables.request.php" class="link">REQUEST</a>.
     (Eliminado a partir de PHP 8.0.0; no estaba implementado previamente)
    </span>
   </dd>
  
 </dl>

 <dl id="filter.constants.flags.generic">
  <strong class="title">Flags genéricos de filtro</strong>
  
   <dt id="constant.filter-flag-none">
    <strong><code><a href="filter.constants.php#constant.filter-flag-none">FILTER_FLAG_NONE</a></code></strong>
    (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
   </dt>
   <dd>
    <span class="simpara">
     Sin flags.
    </span>
   </dd>
  
  
   <dt id="constant.filter-require-scalar">
    <strong><code><a href="filter.constants.php#constant.filter-require-scalar">FILTER_REQUIRE_SCALAR</a></code></strong>
    (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
   </dt>
   <dd>
    <span class="simpara">
     Flag utilizado para requerir que la entrada del filtro sea un escalar.
    </span>
   </dd>
  
  
   <dt id="constant.filter-require-array">
    <strong><code><a href="filter.constants.php#constant.filter-require-array">FILTER_REQUIRE_ARRAY</a></code></strong>
    (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
   </dt>
   <dd>
    <span class="simpara">
     Flag utilizado para requerir que la entrada del filtro sea un <span class="type"><a href="language.types.array.php" class="type array">array</a></span>.
    </span>
   </dd>
  
  
   <dt id="constant.filter-force-array">
    <strong><code><a href="filter.constants.php#constant.filter-force-array">FILTER_FORCE_ARRAY</a></code></strong>
    (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
   </dt>
   <dd>
    <span class="simpara">
     Este flag envuelve las entradas escalares en un <span class="type"><a href="language.types.array.php" class="type array">array</a></span> de un elemento
     para filtros que operan sobre arrays.
    </span>
   </dd>
  
  
   <dt id="constant.filter-null-on-failure">
    <strong><code><a href="filter.constants.php#constant.filter-null-on-failure">FILTER_NULL_ON_FAILURE</a></code></strong>
    (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
   </dt>
   <dd>
    <span class="simpara">
     Usar <strong><code><a href="reserved.constants.php#constant.null">null</a></code></strong> en lugar de <strong><code><a href="reserved.constants.php#constant.false">false</a></code></strong> en caso de fallo.
    </span>
    <span class="simpara">
     Utilizable con cualquier filtro de validación
     <strong><code><a href="filter.constants.php#constant.filter-validate-bool">FILTER_VALIDATE_<span class="replaceable">*</span></a></code></strong>.
    </span>
   </dd>
  
 </dl>

 <dl id="filter.constants.flags.sanitization">
  <strong class="title">Flags de filtro de saneamiento</strong>
  
   <dt id="constant.filter-flag-strip-low">
    <strong><code><a href="filter.constants.php#constant.filter-flag-strip-low">FILTER_FLAG_STRIP_LOW</a></code></strong>
    (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
   </dt>
   <dd>
    <span class="simpara">
     Elimina caracteres con valor ASCII menor que 32.
    </span>
   </dd>
  
  
   <dt id="constant.filter-flag-strip-high">
    <strong><code><a href="filter.constants.php#constant.filter-flag-strip-high">FILTER_FLAG_STRIP_HIGH</a></code></strong>
    (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
   </dt>
   <dd>
    <span class="simpara">
     Elimina caracteres con valor ASCII mayor que 127.
    </span>
   </dd>
  
  
   <dt id="constant.filter-flag-strip-backtick">
    <strong><code><a href="filter.constants.php#constant.filter-flag-strip-backtick">FILTER_FLAG_STRIP_BACKTICK</a></code></strong>
    (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
   </dt>
   <dd>
    <span class="simpara">
     Elimina caracteres de comilla invertida (<code class="literal">`</code>).
    </span>
   </dd>
  
  
   <dt id="constant.filter-flag-encode-low">
    <strong><code><a href="filter.constants.php#constant.filter-flag-encode-low">FILTER_FLAG_ENCODE_LOW</a></code></strong>
    (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
   </dt>
   <dd>
    <span class="simpara">
     Codifica caracteres con valor ASCII menor que 32.
    </span>
   </dd>
  
  
   <dt id="constant.filter-flag-encode-high">
    <strong><code><a href="filter.constants.php#constant.filter-flag-encode-high">FILTER_FLAG_ENCODE_HIGH</a></code></strong>
    (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
   </dt>
   <dd>
    <span class="simpara">
     Codifica caracteres con valor ASCII mayor que 127.
    </span>
   </dd>
  
  
   <dt id="constant.filter-flag-encode-amp">
    <strong><code><a href="filter.constants.php#constant.filter-flag-encode-amp">FILTER_FLAG_ENCODE_AMP</a></code></strong>
    (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
   </dt>
   <dd>
    <span class="simpara">
     Codifica <code class="literal">&amp;</code>.
    </span>
   </dd>
  
  
   <dt id="constant.filter-flag-no-encode-quotes">
    <strong><code><a href="filter.constants.php#constant.filter-flag-no-encode-quotes">FILTER_FLAG_NO_ENCODE_QUOTES</a></code></strong>
    (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
   </dt>
   <dd>
    <span class="simpara">
     Las comillas simples y dobles (<code class="literal">&#039;</code> y <code class="literal">&quot;</code>)
     no serán codificadas.
    </span>
   </dd>
  
  
   <dt id="constant.filter-flag-empty-string-null">
    <strong><code><a href="filter.constants.php#constant.filter-flag-empty-string-null">FILTER_FLAG_EMPTY_STRING_NULL</a></code></strong>
    (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
   </dt>
   <dd>
    <span class="simpara">
     
     Si el saneamiento de un string resulta en un string vacío,
     convierte el valor a <strong><code><a href="reserved.constants.php#constant.null">null</a></code></strong>
    </span>
   </dd>
  
 </dl>

 <dl id="filter.constants.validation">
  <strong class="title">Filtros de validación</strong>

  
   <dt id="constant.filter-validate-bool">
    <strong><code><a href="filter.constants.php#constant.filter-validate-bool">FILTER_VALIDATE_BOOL</a></code></strong>
    (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
   </dt>
   <dd>
    <span class="simpara">
     Devuelve <strong><code><a href="reserved.constants.php#constant.true">true</a></code></strong> para <code class="literal">&quot;1&quot;</code>,
     <code class="literal">1</code> incluyendo notaciones binarias, octales y hexadecimales, <code class="literal">1.0</code>,
     <code class="literal">&quot;true&quot;</code>, <code class="literal">true</code>,
     <code class="literal">&quot;on&quot;</code>,
     y <code class="literal">&quot;yes&quot;</code>.
    </span>
    <span class="simpara">
     Devuelve <strong><code><a href="reserved.constants.php#constant.false">false</a></code></strong> para <code class="literal">&quot;0&quot;</code>,
     <code class="literal">0</code> incluyendo notaciones binarias, octales y hexadecimales, <code class="literal">0.0</code>,
     <code class="literal">&quot;false&quot;</code>, <code class="literal">false</code>,
     <code class="literal">&quot;off&quot;</code>,
     <code class="literal">&quot;no&quot;</code>, y
     <code class="literal">&quot;&quot;</code>.
    </span>
    <span class="simpara">
     Los valores de string se comparan sin distinguir entre mayúsculas y minúsculas.
     El valor de retorno para valores no booleanos depende de
     <strong><code><a href="filter.constants.php#constant.filter-null-on-failure">FILTER_NULL_ON_FAILURE</a></code></strong>.
     Si está configurado, se devuelve <strong><code><a href="reserved.constants.php#constant.null">null</a></code></strong>, de lo contrario se devuelve <strong><code><a href="reserved.constants.php#constant.false">false</a></code></strong>.
    </span>
    <dl id="filter.constants.validation.bool.options">
     <strong class="title">Opciones disponibles</strong>
     
      <dt><code class="literal">default</code></dt>
      <dd>
       <span class="simpara">
        Valor a devolver en caso de que el filtro falle.
       </span>
      </dd>
     
    </dl>
    <span class="simpara">
     Disponible a partir de PHP 8.0.0.
    </span>
   </dd>
  

  
   <dt id="constant.filter-validate-boolean">
    <strong><code><a href="filter.constants.php#constant.filter-validate-boolean">FILTER_VALIDATE_BOOLEAN</a></code></strong>
    (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
   </dt>
   <dd>
    <span class="simpara">
     Alias de <strong><code><a href="filter.constants.php#constant.filter-validate-bool">FILTER_VALIDATE_BOOL</a></code></strong>.
     El alias estaba disponible antes de la introducción de su nombre canónico
     en PHP 8.0.0.
    </span>
   </dd>
  

  
   <dt id="constant.filter-validate-int">
    <strong><code><a href="filter.constants.php#constant.filter-validate-int">FILTER_VALIDATE_INT</a></code></strong>
    (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
   </dt>
   <dd>
    <span class="simpara">
     Valida si el valor es un entero,
     en caso de éxito se convierte al tipo <span class="type"><a href="language.types.integer.php" class="type int">int</a></span>.
    </span>

    <blockquote class="note"><p><strong class="note">Nota</strong>: 
     <span class="simpara">
      Los valores string son recortados usando <span class="function"><a href="function.trim.php" class="function">trim()</a></span>
      antes de la validación.
     </span>
    </p></blockquote>

    <dl id="filter.constants.validation.int.options">
     <strong class="title">Opciones disponibles</strong>
     
      <dt><code class="literal">default</code></dt>
      <dd>
       <span class="simpara">
        Valor a devolver en caso de que el filtro falle.
       </span>
      </dd>
     
     
      <dt><code class="literal">min_range</code></dt>
      <dd>
       <span class="simpara">
        El valor solo es válido si es mayor o igual que el valor proporcionado.
       </span>
      </dd>
     
     
      <dt><code class="literal">max_range</code></dt>
      <dd>
       <span class="simpara">
        El valor solo es válido si es menor o igual que el valor proporcionado.
       </span>
      </dd>
     
    </dl>
    <dl id="filter.constants.validation.int.flags">
     <strong class="title">Flags opcionales</strong>
     
      <dt id="constant.filter-flag-allow-octal">
       <strong><code><a href="filter.constants.php#constant.filter-flag-allow-octal">FILTER_FLAG_ALLOW_OCTAL</a></code></strong>
       (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
      </dt>
      <dd>
       <span class="simpara">
        
        Permite enteros en notación octal
        (<code class="literal">0[0-7]+</code>).
       </span>
      </dd>
     
     
      <dt id="constant.filter-flag-allow-hex">
       <strong><code><a href="filter.constants.php#constant.filter-flag-allow-hex">FILTER_FLAG_ALLOW_HEX</a></code></strong>
       (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
      </dt>
      <dd>
       <span class="simpara">
        Permite enteros en notación hexadecimal
        (<code class="literal">0x[0-9a-fA-F]+</code>).
       </span>
      </dd>
     
    </dl>
   </dd>
  

  
   <dt id="constant.filter-validate-float">
    <strong><code><a href="filter.constants.php#constant.filter-validate-float">FILTER_VALIDATE_FLOAT</a></code></strong>
    (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
   </dt>
   <dd>
    <span class="simpara">
     Valida si el valor es un float,
     en caso de éxito se convierte al tipo <span class="type"><a href="language.types.float.php" class="type float">float</a></span>.
    </span>

    <blockquote class="note"><p><strong class="note">Nota</strong>: 
     <span class="simpara">
      Los valores string son recortados usando <span class="function"><a href="function.trim.php" class="function">trim()</a></span>
      antes de la validación.
     </span>
    </p></blockquote>

    <dl id="filter.constants.validation.float.options">
     <strong class="title">Opciones disponibles</strong>
     
      <dt><code class="literal">default</code></dt>
      <dd>
       <span class="simpara">
        Valor a devolver en caso de que el filtro falle.
       </span>
      </dd>
     
     
      <dt><code class="literal">decimal</code></dt>
      <dd>
       <span class="simpara">
        
       </span>
      </dd>
     
     
      <dt><code class="literal">min_range</code></dt>
      <dd>
       <span class="simpara">
        El valor solo es válido si es mayor o igual que el valor proporcionado.
        Disponible a partir de PHP 7.4.0.
       </span>
      </dd>
     
     
      <dt><code class="literal">max_range</code></dt>
      <dd>
       <span class="simpara">
        El valor solo es válido si es menor o igual que el valor proporcionado.
        Disponible a partir de PHP 7.4.0.
       </span>
      </dd>
     
    </dl>
    <dl id="filter.constants.validation.float.flags">
     <strong class="title">Flags opcionales</strong>
     
      <dt>
       <strong><code><a href="filter.constants.php#constant.filter-flag-allow-thousand">FILTER_FLAG_ALLOW_THOUSAND</a></code></strong>
       (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
      </dt>
      <dd>
       <span class="simpara">
        Acepta comas (<code class="literal">,</code>),
        que normalmente representan el separador de miles.
       </span>
      </dd>
     
    </dl>
   </dd>
  
  
   <dt id="constant.filter-validate-regexp">
    <strong><code><a href="filter.constants.php#constant.filter-validate-regexp">FILTER_VALIDATE_REGEXP</a></code></strong>
    (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
   </dt>
   <dd>
    <span class="simpara">
     Valida el valor contra la expresión regular proporcionada por la
     opción <code class="literal">regexp</code>.
    </span>

    <dl id="filter.constants.validation.regex.options">
     <strong class="title">Opciones disponibles</strong>
     
      <dt><code class="literal">default</code></dt>
      <dd>
       <span class="simpara">
        Valor a devolver en caso de que el filtro falle.
       </span>
      </dd>
     
     
      <dt><code class="literal">regexp</code></dt>
      <dd>
       <span class="simpara">
        Expresión regular <a href="book.pcre.php" class="link">compatible con Perl</a>.
       </span>
      </dd>
     
    </dl>
   </dd>
  

  
   <dt id="constant.filter-validate-url">
    <strong><code><a href="filter.constants.php#constant.filter-validate-url">FILTER_VALIDATE_URL</a></code></strong>
    (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
   </dt>
   <dd>
    <span class="simpara">
     Valida si la <abbr title="Uniform Resource Locator">URL</abbr> es válido según
     <a href="https://datatracker.ietf.org/doc/html/rfc2396" class="link external">&raquo;&nbsp;RFC 2396</a>.
    </span>
    <dl id="filter.constants.validation.url.options">
     <strong class="title">Opciones disponibles</strong>
     
      <dt><code class="literal">default</code></dt>
      <dd>
       <span class="simpara">
        Valor a devolver en caso de que el filtro falle.
       </span>
      </dd>
     
    </dl>
    <dl id="filter.constants.validation.url.flags">
     <strong class="title">Flags opcionales</strong>
     
      <dt id="constant.filter-flag-scheme-required">
       <strong><code><a href="filter.constants.php#constant.filter-flag-scheme-required">FILTER_FLAG_SCHEME_REQUIRED</a></code></strong>
       (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
      </dt>
      <dd>
       <span class="simpara">
        Requiere que la <abbr title="Uniform Resource Locator">URL</abbr> contenga una parte de esquema.
       </span>
       <div class="warning"><strong class="warning">Advertencia</strong>
        <p class="simpara">
         <em>OBSOLETO</em> a partir de PHP 7.3.0 y
         <em>ELIMINADO</em> a partir de PHP 8.0.0.
         Esto se debe a que siempre está implícito por el
         filtro <strong><code><a href="filter.constants.php#constant.filter-validate-url">FILTER_VALIDATE_URL</a></code></strong>.
        </p>
       </div>
      </dd>
     
     
      <dt id="constant.filter-flag-host-required">
       <strong><code><a href="filter.constants.php#constant.filter-flag-host-required">FILTER_FLAG_HOST_REQUIRED</a></code></strong>
       (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
      </dt>
      <dd>
       <span class="simpara">
        Requiere que la <abbr title="Uniform Resource Locator">URL</abbr> contenga una parte de host.
       </span>
       <div class="warning"><strong class="warning">Advertencia</strong>
        <p class="simpara">
         <em>OBSOLETO</em> a partir de PHP 7.3.0 y
         <em>ELIMINADO</em> a partir de PHP 8.0.0.
         Esto se debe a que siempre está implícito por el
         filtro <strong><code><a href="filter.constants.php#constant.filter-validate-url">FILTER_VALIDATE_URL</a></code></strong>.
        </p>
       </div>
      </dd>
     
     
      <dt id="constant.filter-flag-path-required">
       <strong><code><a href="filter.constants.php#constant.filter-flag-path-required">FILTER_FLAG_PATH_REQUIRED</a></code></strong>
       (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
      </dt>
      <dd>
       <span class="simpara">
        Requiere que la <abbr title="Uniform Resource Locator">URL</abbr> contenga una parte de ruta.
       </span>
      </dd>
     
     
      <dt id="constant.filter-flag-query-required">
       <strong><code><a href="filter.constants.php#constant.filter-flag-query-required">FILTER_FLAG_QUERY_REQUIRED</a></code></strong>
       (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
      </dt>
      <dd>
       <span class="simpara">
        Requiere que la <abbr title="Uniform Resource Locator">URL</abbr> contenga una parte de consulta.
       </span>
      </dd>
     
    </dl>
    <div class="warning"><strong class="warning">Advertencia</strong>
     <p class="simpara">
      Una <abbr title="Uniform Resource Locator">URL</abbr> válida puede no especificar el
      protocolo <abbr title="Hypertext Transfer Protocol">HTTP</abbr> (<code class="literal">http://</code>).
      Por lo tanto, puede ser necesaria una validación adicional para determinar si la
      <abbr title="Uniform Resource Locator">URL</abbr> usa un protocolo esperado,
      por ejemplo, <code class="literal">ssh://</code> o <code class="literal">mailto:</code>.
     </p>
    </div>
    <div class="warning"><strong class="warning">Advertencia</strong>
     <p class="simpara">
      Este filtro solo funciona con <abbr title="Uniform Resource Locator">URL</abbr>s <abbr title="American Standard Code for Information Interchange">ASCII</abbr>.
      Esto significa que los Nombres de Dominio Internacionalizados (IDN) siempre serán rechazados.
     </p>
    </div>
   </dd>
  
  
   <dt id="constant.filter-validate-domain">
    <strong><code><a href="filter.constants.php#constant.filter-validate-domain">FILTER_VALIDATE_DOMAIN</a></code></strong>
    (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
   </dt>
   <dd>
    <span class="simpara">
     Valida si el nombre de dominio es válido según
     <a href="https://datatracker.ietf.org/doc/html/rfc952" class="link external">&raquo;&nbsp;RFC 952</a>,
     <a href="https://datatracker.ietf.org/doc/html/rfc1034" class="link external">&raquo;&nbsp;RFC 1034</a>,
     <a href="https://datatracker.ietf.org/doc/html/rfc1035" class="link external">&raquo;&nbsp;RFC 1035</a>,
     <a href="https://datatracker.ietf.org/doc/html/rfc1034" class="link external">&raquo;&nbsp;RFC 1123</a>,
     <a href="https://datatracker.ietf.org/doc/html/rfc1034" class="link external">&raquo;&nbsp;RFC 2732</a>,
     y
     <a href="https://datatracker.ietf.org/doc/html/rfc2181" class="link external">&raquo;&nbsp;RFC 2181</a>.
    </span>
    <dl id="filter.constants.validation.domain.options">
     <strong class="title">Opciones disponibles</strong>
     
      <dt><code class="literal">default</code></dt>
      <dd>
       <span class="simpara">
        Valor a devolver en caso de que el filtro falle.
       </span>
      </dd>
     
    </dl>
    <dl id="filter.constants.validation.domain.flags">
     <strong class="title">Flags opcionales</strong>
     
      <dt id="constant.filter-flag-hostname">
       <strong><code><a href="filter.constants.php#constant.filter-flag-hostname">FILTER_FLAG_HOSTNAME</a></code></strong>
       (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
      </dt>
      <dd>
       <span class="simpara">
        Requiere que los nombres de host comiencen con un carácter alfanumérico y contengan
        solo caracteres alfanuméricos o guiones.
       </span>
      </dd>
     
    </dl>
   </dd>
  
  
   <dt id="constant.filter-validate-email">
    <strong><code><a href="filter.constants.php#constant.filter-validate-email">FILTER_VALIDATE_EMAIL</a></code></strong>
    (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
   </dt>
   <dd>
    <span class="simpara">
     Valida si el valor es una dirección de correo electrónico &quot;válida&quot;.
    </span>

    <span class="simpara">
     La validación se realiza contra la sintaxis <code class="literal">addr-spec</code>
     en
     <a href="https://datatracker.ietf.org/doc/html/rfc822" class="link external">&raquo;&nbsp;RFC 822</a>.
     Sin embargo, los comentarios, el plegado de espacios en blanco y los nombres de dominio sin puntos
     no están soportados, y por lo tanto serán rechazados.
    </span>

    <dl id="filter.constants.validation.email.options">
     <strong class="title">Opciones disponibles</strong>
     
      <dt><code class="literal">default</code></dt>
      <dd>
       <span class="simpara">
        Valor a devolver en caso de que el filtro falle.
       </span>
      </dd>
     
    </dl>
    <dl id="filter.constants.validation.email.flags">
     <strong class="title">Flags opcionales</strong>
     
      <dt id="constant.filter-flag-email-unicode">
       <strong><code><a href="filter.constants.php#constant.filter-flag-email-unicode">FILTER_FLAG_EMAIL_UNICODE</a></code></strong>
       (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
      </dt>
      <dd>
       <span class="simpara">
        Acepta caracteres Unicode en la parte local.
        Disponible a partir de PHP 7.1.0.
       </span>
      </dd>
     
    </dl>

    <div class="warning"><strong class="warning">Advertencia</strong>
     <p class="simpara">
      La validación de correo electrónico es compleja y la única forma verdadera de confirmar que un correo electrónico
      es válido y existe es enviar un correo electrónico a la dirección.
     </p>
    </div>
   </dd>
  

  
   <dt id="constant.filter-validate-ip">
    <strong><code><a href="filter.constants.php#constant.filter-validate-ip">FILTER_VALIDATE_IP</a></code></strong>
    (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
   </dt>
   <dd>
    <p class="para">
     Valida el valor como dirección IP.
    </p>
    <dl id="filter.constants.validation.ip.options">
     <strong class="title">Opciones disponibles</strong>
     
      <dt><code class="literal">default</code></dt>
      <dd>
       <span class="simpara">
        Valor a devolver en caso de que el filtro falle.
       </span>
      </dd>
     
    </dl>
    <dl id="filter.constants.validation.ip.flags">
     <strong class="title">Flags opcionales</strong>
     
      <dt id="constant.filter-flag-ipv4">
       <strong><code><a href="filter.constants.php#constant.filter-flag-ipv4">FILTER_FLAG_IPV4</a></code></strong>
       (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
      </dt>
      <dd>
       <span class="simpara">
        Permite direcciones IPv4.
       </span>
      </dd>
     
     
      <dt id="constant.filter-flag-ipv6">
       <strong><code><a href="filter.constants.php#constant.filter-flag-ipv6">FILTER_FLAG_IPV6</a></code></strong>
       (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
      </dt>
      <dd>
       <span class="simpara">
        Permite direcciones IPv6.
       </span>
      </dd>
     
     
      <dt id="constant.filter-flag-no-res-range">
       <strong><code><a href="filter.constants.php#constant.filter-flag-no-res-range">FILTER_FLAG_NO_RES_RANGE</a></code></strong>
       (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
      </dt>
      <dd>
       <span class="simpara">
        Deniega direcciones reservadas.
       </span>
       <span class="simpara">
        Estos son los rangos que están marcados como
        <code class="literal">Reserved-By-Protocol</code> en
        <a href="https://datatracker.ietf.org/doc/html/rfc6890" class="link external">&raquo;&nbsp;RFC 6890</a>.
       </span>
       <p class="para">
        Que para IPv4 corresponden a los siguientes rangos:
        <span class="simplelist"><code class="literal">0.0.0.0/8</code>, <code class="literal">169.254.0.0/16</code>, <code class="literal">127.0.0.0/8</code>, <code class="literal">240.0.0.0/4</code></span>.
       </p>
       <p class="para">
        Y para IPv6 corresponden a los siguientes rangos:
        <span class="simplelist"><code class="literal">::1/128</code>, <code class="literal">::/128</code>, <code class="literal">::FFFF:0:0/96</code>, <code class="literal">FE80::/10</code></span>.
       </p>
      </dd>
     
     
      <dt id="constant.filter-flag-no-priv-range">
       <strong><code><a href="filter.constants.php#constant.filter-flag-no-priv-range">FILTER_FLAG_NO_PRIV_RANGE</a></code></strong>
       (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
      </dt>
      <dd>
       <span class="simpara">
        Deniega direcciones privadas.
       </span>
       <p class="para">
        Estas son direcciones IPv4 que están en los siguientes rangos:
        <span class="simplelist"><code class="literal">10.0.0.0/8</code>, <code class="literal">172.16.0.0/12</code>, <code class="literal">192.168.0.0/16</code></span>.
       </p>
       <span class="simpara">
        Estas son direcciones IPv6 que comienzan con
        <code class="literal">FD</code> o <code class="literal">FC</code>.
       </span>
      </dd>
     
     
      <dt id="constant.filter-flag-global-range">
       <strong><code><a href="filter.constants.php#constant.filter-flag-global-range">FILTER_FLAG_GLOBAL_RANGE</a></code></strong>
       (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
      </dt>
      <dd>
       <span class="simpara">
        Solo permite direcciones globales.
        Estas se pueden encontrar en
        <a href="https://datatracker.ietf.org/doc/html/rfc6890" class="link external">&raquo;&nbsp;RFC 6890</a>
        donde el atributo <code class="literal">Global</code> es <code class="literal">True</code>.
        Disponible a partir de PHP 8.2.0.
       </span>
      </dd>
     
    </dl>
   </dd>
  

  
   <dt id="constant.filter-validate-mac">
    <strong><code><a href="filter.constants.php#constant.filter-validate-mac">FILTER_VALIDATE_MAC</a></code></strong>
    (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
   </dt>
   <dd>
    <span class="simpara">
     Valida si el valor es una dirección MAC.
    </span>

    <dl id="filter.constants.validation.mac.options">
     <strong class="title">Opciones disponibles</strong>
     
      <dt><code class="literal">default</code></dt>
      <dd>
       <span class="simpara">
        Valor a devolver en caso de que el filtro falle.
       </span>
      </dd>
     
    </dl>
   </dd>
  
 </dl>

 <dl id="filter.constants.sanitization">
  <strong class="title">Filtros de saneamiento</strong>
  
   <dt id="constant.filter-unsafe-raw">
    <strong><code><a href="filter.constants.php#constant.filter-unsafe-raw">FILTER_UNSAFE_RAW</a></code></strong>
    (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
   </dt>
   <dd>
    <span class="simpara">
     Este filtro no hace nada.
    </span>
    <span class="simpara">
     Sin embargo, puede eliminar o codificar caracteres especiales si se usa junto con
     los flags de saneamiento de filtro <strong><code><a href="filter.constants.php#constant.filter-flag-strip-low">FILTER_FLAG_STRIP_<span class="replaceable">*</span></a></code></strong>
     y <strong><code><a href="filter.constants.php#constant.filter-flag-encode-low">FILTER_FLAG_ENCODE_<span class="replaceable">*</span></a></code></strong>.
    </span>
   </dd>
  
  
   <dt id="constant.filter-default">
    <strong><code><a href="filter.constants.php#constant.filter-default">FILTER_DEFAULT</a></code></strong>
    (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
   </dt>
   <dd>
    <span class="simpara">
     Alias de <strong><code><a href="filter.constants.php#constant.filter-unsafe-raw">FILTER_UNSAFE_RAW</a></code></strong>.
    </span>
   </dd>
  
  
   <dt id="constant.filter-sanitize-string">
    <strong><code><a href="filter.constants.php#constant.filter-sanitize-string">FILTER_SANITIZE_STRING</a></code></strong>
    (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
   </dt>
   <dd>
    <span class="simpara">
     Este filtro elimina etiquetas y codifica en HTML comillas dobles y simples.
    </span>
    <span class="simpara">
     Opcionalmente puede eliminar o codificar caracteres especificados si se usa junto con
     los flags de saneamiento de filtro <strong><code><a href="filter.constants.php#constant.filter-flag-strip-low">FILTER_FLAG_STRIP_<span class="replaceable">*</span></a></code></strong>
     y <strong><code><a href="filter.constants.php#constant.filter-flag-encode-low">FILTER_FLAG_ENCODE_<span class="replaceable">*</span></a></code></strong>.
    </span>
    <span class="simpara">
     El comportamiento de codificación de comillas puede desactivarse usando el
     flag de filtro <strong><code><a href="filter.constants.php#constant.filter-flag-no-encode-quotes">FILTER_FLAG_NO_ENCODE_QUOTES</a></code></strong>.
    </span>
    <div class="warning"><strong class="warning">Advertencia</strong>
     <p class="simpara">
      <em>Obsoleto</em> a partir de PHP 8.1.0,
      use <span class="function"><a href="function.htmlspecialchars.php" class="function">htmlspecialchars()</a></span> en su lugar.
     </p>
    </div>
    <div class="warning"><strong class="warning">Advertencia</strong>
     <p class="simpara">
      La forma en que este filtro elimina etiquetas no es equivalente a
      <span class="function"><a href="function.strip-tags.php" class="function">strip_tags()</a></span>.
     </p>
    </div>
   </dd>
  
  
   <dt id="constant.filter-sanitize-stripped">
    <strong><code><a href="filter.constants.php#constant.filter-sanitize-stripped">FILTER_SANITIZE_STRIPPED</a></code></strong>
    (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
   </dt>
   <dd>
    <span class="simpara">
     Alias de <strong><code><a href="filter.constants.php#constant.filter-sanitize-string">FILTER_SANITIZE_STRING</a></code></strong>.
    </span>
    <div class="warning"><strong class="warning">Advertencia</strong>
     <p class="simpara">
      <em>Obsoleto</em> a partir de PHP 8.1.0,
      use <span class="function"><a href="function.htmlspecialchars.php" class="function">htmlspecialchars()</a></span> en su lugar.
     </p>
    </div>
   </dd>
  
  
   <dt id="constant.filter-sanitize-encoded">
    <strong><code><a href="filter.constants.php#constant.filter-sanitize-encoded">FILTER_SANITIZE_ENCODED</a></code></strong>
    (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
   </dt>
   <dd>
    <span class="simpara">
     Este filtro codifica una cadena en URL.
    </span>
    <span class="simpara">
     Opcionalmente puede eliminar o codificar caracteres especificados si se usa junto con
     los flags de saneamiento de filtro <strong><code><a href="filter.constants.php#constant.filter-flag-strip-low">FILTER_FLAG_STRIP_<span class="replaceable">*</span></a></code></strong>
     y <strong><code><a href="filter.constants.php#constant.filter-flag-encode-low">FILTER_FLAG_ENCODE_<span class="replaceable">*</span></a></code></strong>.
    </span>
   </dd>
  
  
   <dt id="constant.filter-sanitize-special-chars">
    <strong><code><a href="filter.constants.php#constant.filter-sanitize-special-chars">FILTER_SANITIZE_SPECIAL_CHARS</a></code></strong>
    (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
   </dt>
   <dd>
    <p class="para">
     Este filtro codifica en HTML
     <span class="simplelist"><code class="literal">&#039;</code>, <code class="literal">&quot;</code>, <code class="literal">&lt;</code>, <code class="literal">&gt;</code>, <code class="literal">&amp;</code></span>
     y caracteres con un valor ASCII menor que 32.
     A diferencia del filtro <strong><code><a href="filter.constants.php#constant.filter-sanitize-full-special-chars">FILTER_SANITIZE_FULL_SPECIAL_CHARS</a></code></strong>, el
     filtro <strong><code><a href="filter.constants.php#constant.filter-sanitize-special-chars">FILTER_SANITIZE_SPECIAL_CHARS</a></code></strong> ignora el
     flag <strong><code><a href="filter.constants.php#constant.filter-flag-no-encode-quotes">FILTER_FLAG_NO_ENCODE_QUOTES</a></code></strong>.
    </p>
    <span class="simpara">
     Opcionalmente puede eliminar caracteres especificados si se usa junto con
     los flags de saneamiento de filtro <strong><code><a href="filter.constants.php#constant.filter-flag-strip-low">FILTER_FLAG_STRIP_<span class="replaceable">*</span></a></code></strong>,
     y puede codificar caracteres con valor ASCII
     mayor que 127 usando <strong><code><a href="filter.constants.php#constant.filter-flag-encode-high">FILTER_FLAG_ENCODE_HIGH</a></code></strong>.
    </span>
   </dd>
  
  
   <dt id="constant.filter-sanitize-full-special-chars">
    <strong><code><a href="filter.constants.php#constant.filter-sanitize-full-special-chars">FILTER_SANITIZE_FULL_SPECIAL_CHARS</a></code></strong>
    (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
   </dt>
   <dd>
    <span class="simpara">
     Este filtro es equivalente a llamar a <span class="function"><a href="function.htmlspecialchars.php" class="function">htmlspecialchars()</a></span>
     con <strong><code><a href="string.constants.php#constant.ent-quotes">ENT_QUOTES</a></code></strong> configurado.
    </span>
    <span class="simpara">
     El comportamiento de codificación de comillas puede desactivarse usando el
     flag de filtro <strong><code><a href="filter.constants.php#constant.filter-flag-no-encode-quotes">FILTER_FLAG_NO_ENCODE_QUOTES</a></code></strong>.
    </span>
    <div class="warning"><strong class="warning">Advertencia</strong>
     <p class="simpara">
      Al igual que <span class="function"><a href="function.htmlspecialchars.php" class="function">htmlspecialchars()</a></span>, este filtro es consciente de la
      configuración INI <a href="ini.core.php#ini.default-charset" class="link">default_charset</a>.
      Si se detecta una secuencia de bytes que forma un carácter no válido
      en el juego de caracteres actual, entonces toda la cadena es rechazada
      resultando en que se devuelva una cadena vacía.
     </p>
    </div>
   </dd>
  
  
   <dt id="constant.filter-sanitize-email">
    <strong><code><a href="filter.constants.php#constant.filter-sanitize-email">FILTER_SANITIZE_EMAIL</a></code></strong>
    (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
   </dt>
   <dd>
    <span class="simpara">
     Sanea la cadena eliminando todos los caracteres excepto
     letras latinas (<code class="literal">[a-zA-Z]</code>),
     dígitos (<code class="literal">[0-9]</code>),
     y los caracteres especiales
     <code class="literal">!#$%&amp;&#039;*+-=?^_`{|}~@.[]</code>.
    </span>
   </dd>
  
  
   <dt id="constant.filter-sanitize-url">
    <strong><code><a href="filter.constants.php#constant.filter-sanitize-url">FILTER_SANITIZE_URL</a></code></strong>
    (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
   </dt>
   <dd>
    <span class="simpara">
     Sanea la cadena eliminando todos los caracteres excepto
     letras latinas (<code class="literal">[a-zA-Z]</code>),
     dígitos (<code class="literal">[0-9]</code>),
     y los caracteres especiales
     <code class="literal">$-_.+!*&#039;(),{}|\\^~[]`&lt;&gt;#%&quot;;/?:@&amp;=</code>.
    </span>
   </dd>
  
  
   <dt id="constant.filter-sanitize-number-int">
    <strong><code><a href="filter.constants.php#constant.filter-sanitize-number-int">FILTER_SANITIZE_NUMBER_INT</a></code></strong>
    (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
   </dt>
   <dd>
    <span class="simpara">
     Sanea la cadena eliminando todos los caracteres excepto dígitos
     (<code class="literal">[0-9]</code>), signo más (<code class="literal">+</code>),
     y signo menos (<code class="literal">-</code>).
    </span>
   </dd>
  
  
   <dt id="constant.filter-sanitize-number-float">
    <strong><code><a href="filter.constants.php#constant.filter-sanitize-number-float">FILTER_SANITIZE_NUMBER_FLOAT</a></code></strong>
    (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
   </dt>
   <dd>
    <span class="simpara">
     Sanea la cadena eliminando todos los caracteres excepto dígitos
     (<code class="literal">[0-9]</code>), signo más (<code class="literal">+</code>),
     y signo menos (<code class="literal">-</code>).
    </span>

    <dl id="filter.constants.sanitization.float.flags">
     <strong class="title">Flags opcionales</strong>
     
      <dt id="constant.filter-flag-allow-fraction">
       <strong><code><a href="filter.constants.php#constant.filter-flag-allow-fraction">FILTER_FLAG_ALLOW_FRACTION</a></code></strong>
       (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
      </dt>
      <dd>
       <span class="simpara">
        Acepta el carácter punto (<code class="literal">.</code>),
        que normalmente representa el separador entre las partes entera y
        fraccionaria.
       </span>
      </dd>
     
     
      <dt id="constant.filter-flag-allow-thousand">
       <strong><code><a href="filter.constants.php#constant.filter-flag-allow-thousand">FILTER_FLAG_ALLOW_THOUSAND</a></code></strong>
       (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
      </dt>
      <dd>
       <span class="simpara">
        Acepta el carácter coma (<code class="literal">,</code>),
        que normalmente representa el separador de miles.
       </span>
      </dd>
     
     
      <dt id="constant.filter-flag-allow-scientific">
       <strong><code><a href="filter.constants.php#constant.filter-flag-allow-scientific">FILTER_FLAG_ALLOW_SCIENTIFIC</a></code></strong>
       (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
      </dt>
      <dd>
       <span class="simpara">
        Acepta números en notación científica permitiendo los
        caracteres <code class="literal">e</code> y <code class="literal">E</code>.
       </span>
      </dd>
     
    </dl>
    <div class="warning"><strong class="warning">Advertencia</strong>
     <p class="simpara">
      Si no se usa el flag <strong><code><a href="filter.constants.php#constant.filter-flag-allow-fraction">FILTER_FLAG_ALLOW_FRACTION</a></code></strong>,
      entonces el separador decimal es eliminado, alterando el valor recibido.
     </p>
     <div class="informalexample">
      <div class="example-contents">
<div class="phpcode"><code><span style="color: #000000"><span style="color: #0000BB">&lt;?php<br />$number </span><span style="color: #007700">= </span><span style="color: #DD0000">'12.34'</span><span style="color: #007700">;<br /><br /></span><span style="color: #0000BB">var_dump</span><span style="color: #007700">(</span><span style="color: #0000BB">filter_var</span><span style="color: #007700">(</span><span style="color: #0000BB">$number</span><span style="color: #007700">, </span><span style="color: #0000BB">FILTER_SANITIZE_NUMBER_FLOAT</span><span style="color: #007700">));<br /></span><span style="color: #0000BB">var_dump</span><span style="color: #007700">(</span><span style="color: #0000BB">filter_var</span><span style="color: #007700">(</span><span style="color: #0000BB">$number</span><span style="color: #007700">, </span><span style="color: #0000BB">FILTER_SANITIZE_NUMBER_FLOAT</span><span style="color: #007700">, </span><span style="color: #0000BB">FILTER_FLAG_ALLOW_FRACTION</span><span style="color: #007700">));<br /></span><span style="color: #0000BB">?&gt;</span></span></code></div>
      </div>

      <p class="para">El ejemplo anterior mostrará:</p>
      <div class="example-contents screen">
<div class="cdata"><pre>
string(4) &quot;1234&quot;
string(5) &quot;12.34&quot;
</pre></div>
      </div>
     </div>
    </div>
   </dd>
  

  
   <dt id="constant.filter-sanitize-add-slashes">
    <strong><code><a href="filter.constants.php#constant.filter-sanitize-add-slashes">FILTER_SANITIZE_ADD_SLASHES</a></code></strong>
    (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
   </dt>
   <dd>
    <span class="simpara">
     Aplica <span class="function"><a href="function.addslashes.php" class="function">addslashes()</a></span> a la entrada.
     Disponible a partir de PHP 7.3.0.
    </span>
   </dd>
  

  
   <dt id="constant.filter-sanitize-magic-quotes">
    <strong><code><a href="filter.constants.php#constant.filter-sanitize-magic-quotes">FILTER_SANITIZE_MAGIC_QUOTES</a></code></strong>
    (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
   </dt>
   <dd>
    <span class="simpara">
     Alias de <strong><code><a href="filter.constants.php#constant.filter-sanitize-add-slashes">FILTER_SANITIZE_ADD_SLASHES</a></code></strong>.
    </span>
    <div class="warning"><strong class="warning">Advertencia</strong>
     <p class="simpara">
      <em>OBSOLETO</em> a partir de PHP 7.3.0 y
      <em>ELIMINADO</em> a partir de PHP 8.0.0.
     </p>
    </div>
   </dd>
  
 </dl>

 <dl>
  <strong class="title">Filtro definido por el usuario</strong>
  
   <dt id="constant.filter-callback">
    <strong><code><a href="filter.constants.php#constant.filter-callback">FILTER_CALLBACK</a></code></strong>
    (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
   </dt>
   <dd>
    <span class="simpara">
     Este filtro delega el filtrado a una función definida por el usuario.
     El <span class="type"><a href="language.types.callable.php" class="type callable">callable</a></span> se pasa a través del
     parámetro <code class="parameter">options</code> como el valor asociado a
     la clave <code class="literal">&#039;options&#039;</code>.
    </span>
    <p class="para">
     La retrollamada debe tener la siguiente firma:
     <div class="methodsynopsis dc-description">
      <span class="methodname"><span class="replaceable">callback</span></span>(<span class="methodparam"><span class="type"><a href="language.types.string.php" class="type string">string</a></span> <code class="parameter">$value</code></span>): <span class="type"><a href="language.types.mixed.php" class="type mixed">mixed</a></span></div>

     <dl>
      
       <dt><code class="parameter">value</code></dt>
       <dd>
        <span class="simpara">
         El valor que está siendo filtrado.
        </span>
       </dd>
      
     </dl>
    </p>
    <blockquote class="note"><p><strong class="note">Nota</strong>: 
     <span class="simpara">
      El valor devuelto por la retrollamada será el valor devuelto por
      la función de filtro invocada.
     </span>
    </p></blockquote>
    <div class="example" id="example-1">
     <p><strong>Ejemplo #1 
      Ejemplo de uso de <strong><code><a href="filter.constants.php#constant.filter-callback">FILTER_CALLBACK</a></code></strong> para validar
      un nombre de inicio de sesión
     </strong></p>
     <div class="example-contents">
<div class="phpcode"><code><span style="color: #000000"><span style="color: #0000BB">&lt;?php<br /></span><span style="color: #007700">function </span><span style="color: #0000BB">validate_login</span><span style="color: #007700">(</span><span style="color: #0000BB">string $value</span><span style="color: #007700">): ?</span><span style="color: #0000BB">string<br /></span><span style="color: #007700">{<br />    if (</span><span style="color: #0000BB">strlen</span><span style="color: #007700">(</span><span style="color: #0000BB">$value</span><span style="color: #007700">) &gt;= </span><span style="color: #0000BB">5 </span><span style="color: #007700">&amp;&amp; </span><span style="color: #0000BB">ctype_alnum</span><span style="color: #007700">(</span><span style="color: #0000BB">$value</span><span style="color: #007700">)) {<br />        return </span><span style="color: #0000BB">$value</span><span style="color: #007700">;<br />    }<br />    return </span><span style="color: #0000BB">null</span><span style="color: #007700">;<br />}<br /><br /></span><span style="color: #0000BB">$login </span><span style="color: #007700">= </span><span style="color: #DD0000">"val1dL0gin"</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$filtered_login </span><span style="color: #007700">= </span><span style="color: #0000BB">filter_var</span><span style="color: #007700">(</span><span style="color: #0000BB">$login</span><span style="color: #007700">, </span><span style="color: #0000BB">FILTER_CALLBACK</span><span style="color: #007700">, [</span><span style="color: #DD0000">'options' </span><span style="color: #007700">=&gt; </span><span style="color: #DD0000">'validate_login'</span><span style="color: #007700">]);<br /></span><span style="color: #0000BB">var_dump</span><span style="color: #007700">(</span><span style="color: #0000BB">$filtered_login</span><span style="color: #007700">);<br /><br /></span><span style="color: #0000BB">$login </span><span style="color: #007700">= </span><span style="color: #DD0000">"f&amp;ke login"</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$filtered_login </span><span style="color: #007700">= </span><span style="color: #0000BB">filter_var</span><span style="color: #007700">(</span><span style="color: #0000BB">$login</span><span style="color: #007700">, </span><span style="color: #0000BB">FILTER_CALLBACK</span><span style="color: #007700">, [</span><span style="color: #DD0000">'options' </span><span style="color: #007700">=&gt; </span><span style="color: #DD0000">'validate_login'</span><span style="color: #007700">]);<br /></span><span style="color: #0000BB">var_dump</span><span style="color: #007700">(</span><span style="color: #0000BB">$filtered_login</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">?&gt;</span></span></code></div>
     </div>

     <div class="example-contents"><p>El ejemplo anterior mostrará:</p></div>
     <div class="example-contents screen">
<div class="cdata"><pre>
string(10) &quot;val1dL0gin&quot;
NULL
</pre></div>
     </div>
    </div>
    <div class="warning"><strong class="warning">Advertencia</strong>
     <p class="simpara">
      Este filtro no puede usarse con ningún otro flag de filtro, por ejemplo,
      <strong><code><a href="filter.constants.php#constant.filter-null-on-failure">FILTER_NULL_ON_FAILURE</a></code></strong>.
     </p>
    </div>
   </dd>
  
 </dl>
</div>
<?php manual_footer($setup); ?>