<?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.mkdir.php',
    1 => 'mkdir',
    2 => 'Crea un directorio',
  ),
  'up' => 
  array (
    0 => 'ref.filesystem.php',
    1 => 'Funciones del Sistema de Archivos',
  ),
  'prev' => 
  array (
    0 => 'function.lstat.php',
    1 => 'lstat',
  ),
  'next' => 
  array (
    0 => 'function.move-uploaded-file.php',
    1 => 'move_uploaded_file',
  ),
  'alternatives' => 
  array (
  ),
  'source' => 
  array (
    'lang' => 'es',
    'path' => 'reference/filesystem/functions/mkdir.xml',
  ),
  'history' => 
  array (
  ),
);
$setup["toc"] = $TOC;
$setup["toc_deprecated"] = $TOC_DEPRECATED;
$setup["parents"] = $PARENTS;
manual_setup($setup);

contributors($setup);

?>
<div id="function.mkdir" class="refentry">
 <div class="refnamediv">
  <h1 class="refname">mkdir</h1>
  <p class="verinfo">(PHP 4, PHP 5, PHP 7, PHP 8)</p><p class="refpurpose"><span class="refname">mkdir</span> &mdash; <span class="dc-title">Crea un directorio</span></p>

 </div>

 <div class="refsect1 description" id="refsect1-function.mkdir-description">
  <h3 class="title">Descripción</h3>
  <div class="methodsynopsis dc-description">
   <span class="methodname"><strong>mkdir</strong></span>(<br>&nbsp;&nbsp;&nbsp;&nbsp;<span class="methodparam"><span class="type"><a href="language.types.string.php" class="type string">string</a></span> <code class="parameter">$directory</code></span>,<br>&nbsp;&nbsp;&nbsp;&nbsp;<span class="methodparam"><span class="type"><a href="language.types.integer.php" class="type int">int</a></span> <code class="parameter">$permissions</code><span class="initializer"> = 0777</span></span>,<br>&nbsp;&nbsp;&nbsp;&nbsp;<span class="methodparam"><span class="type"><a href="language.types.boolean.php" class="type bool">bool</a></span> <code class="parameter">$recursive</code><span class="initializer"> = <strong><code><a href="reserved.constants.php#constant.false">false</a></code></strong></span></span>,<br>&nbsp;&nbsp;&nbsp;&nbsp;<span class="methodparam"><span class="type"><span class="type"><a href="language.types.null.php" class="type null">?</a></span><span class="type"><a href="language.types.resource.php" class="type resource">resource</a></span></span> <code class="parameter">$context</code><span class="initializer"> = <strong><code><a href="reserved.constants.php#constant.null">null</a></code></strong></span></span><br>): <span class="type"><a href="language.types.boolean.php" class="type bool">bool</a></span></div>

  <p class="para rdfs-comment">
   Intenta crear el directorio especificado por <code class="parameter">directory</code>.
  </p>
 </div>


 <div class="refsect1 parameters" id="refsect1-function.mkdir-parameters">
  <h3 class="title">Parámetros</h3>
  <p class="para">
   <dl>
    
     <dt><code class="parameter">directory</code></dt>
     <dd>
      <p class="para">
       La ruta del directorio.
       <div class="tip"><strong class="tip">Sugerencia</strong><p class="simpara">
 Puede utilizar una URL como nombre de archivo con esta función, si el
 <a href="filesystem.configuration.php#ini.allow-url-fopen" class="link">gestor fopen</a> ha sido activado. Véase <span class="function"><a href="function.fopen.php" class="function">fopen()</a></span>
 para más detalles sobre cómo especificar el nombre del archivo. Consulte
 <a href="wrappers.php" class="xref">Protocolos y Envolturas soportados</a> para más información sobre las capacidades de los diferentes gestores,
 las notas sobre su uso, así como la información sobre las variables predefinidas que proporcionan.
</p></div>
      </p>
     </dd>
    
    
     <dt><code class="parameter">permissions</code></dt>
     <dd>
      <p class="para">
       El modo predeterminado es 0777, lo que significa el acceso más amplio
       posible. Para más información sobre los modos, lea los detalles
       en la página de <span class="function"><a href="function.chmod.php" class="function">chmod()</a></span>.
      </p>
      <blockquote class="note"><p><strong class="note">Nota</strong>: 
       <p class="para">
        <code class="parameter">permissions</code> es ignorado en Windows.
       </p>
      </p></blockquote>
      <p class="para">
       Observe que probablemente se quiera especificar el modo como un número octal,
       lo que significa que debería de haber un cero inicial. El modo es modificado también
       por la actual máscara de usuario, la cual se puede cambiar usando
       <span class="function"><a href="function.umask.php" class="function">umask()</a></span>.
      </p>
     </dd>
    
    
     <dt><code class="parameter">recursive</code></dt>
     <dd>
      <p class="para">
       Si el valor es <strong><code><a href="reserved.constants.php#constant.true">true</a></code></strong>, entonces cualquier directorio padre del directorio especificado
       en el parámetro <code class="parameter">directory</code> también será creado, con los mismos permisos.
      </p>
     </dd>
    
    
     <dt><code class="parameter">context</code></dt>
     <dd>
      <p class="para">Un <span class="type"><a href="language.types.resource.php" class="type resource">resource</a></span> de
 <a href="stream.contexts.php" class="link">contexto de flujo</a>.</p>
     </dd>
    
   </dl>
  </p>
 </div>


 <div class="refsect1 returnvalues" id="refsect1-function.mkdir-returnvalues">
  <h3 class="title">Valores devueltos</h3>
  <p class="para">
   Esta función retorna <strong><code><a href="reserved.constants.php#constant.true">true</a></code></strong> en caso de éxito o <strong><code><a href="reserved.constants.php#constant.false">false</a></code></strong> si ocurre un error.
  </p>
  <blockquote class="note"><p><strong class="note">Nota</strong>: 
   <p class="para">
    Si el directorio a crear ya existe, se considerará un error
    y se devolverá <strong><code><a href="reserved.constants.php#constant.false">false</a></code></strong>. Utilice <span class="function"><a href="function.is-dir.php" class="function">is_dir()</a></span> o
    <span class="function"><a href="function.file-exists.php" class="function">file_exists()</a></span> para comprobar si el directorio ya existe
    antes de intentar crearlo.
   </p>
  </p></blockquote>
 </div>


 <div class="refsect1 errors" id="refsect1-function.mkdir-errors">
  <h3 class="title">Errores/Excepciones</h3>
  <p class="para">
   Emite un error de nivel <strong><code><a href="errorfunc.constants.php#constant.e-warning">E_WARNING</a></code></strong> si el directorio
   ya existe.
  </p>
  <p class="para">
   Emite un error de nivel <strong><code><a href="errorfunc.constants.php#constant.e-warning">E_WARNING</a></code></strong> si los permisos
   relevantes impiden crear el directorio.
  </p>
 </div>


 <div class="refsect1 examples" id="refsect1-function.mkdir-examples">
  <h3 class="title">Ejemplos</h3>
  <p class="para">
   <div class="example" id="example-1">
    <p><strong>Ejemplo #1 Ejemplo de <span class="function"><strong>mkdir()</strong></span></strong></p>
    <div class="example-contents">
<div class="phpcode"><code><span style="color: #000000"><span style="color: #0000BB">&lt;?php<br />mkdir</span><span style="color: #007700">(</span><span style="color: #DD0000">"/ruta/a/mi/directorio"</span><span style="color: #007700">, </span><span style="color: #0000BB">0700</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">?&gt;</span></span></code></div>
    </div>

   </div>
  </p>
  <p class="para">
   <div class="example" id="example-2">
    <p><strong>Ejemplo #2 <span class="function"><strong>mkdir()</strong></span> usando el parámetro <code class="parameter">recursive</code></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: #FF8000">// Estructura de la carpeta deseada<br /></span><span style="color: #0000BB">$estructura </span><span style="color: #007700">= </span><span style="color: #DD0000">'./nivel1/nivel2/nivel3/'</span><span style="color: #007700">;<br /><br /></span><span style="color: #FF8000">// Para crear una estructura anidada se debe especificar<br />// el parámetro $recursive en mkdir().<br /><br /></span><span style="color: #007700">if(!</span><span style="color: #0000BB">mkdir</span><span style="color: #007700">(</span><span style="color: #0000BB">$estructura</span><span style="color: #007700">, </span><span style="color: #0000BB">0777</span><span style="color: #007700">, </span><span style="color: #0000BB">true</span><span style="color: #007700">)) {<br />    die(</span><span style="color: #DD0000">'Fallo al crear las carpetas...'</span><span style="color: #007700">);<br />}<br /><br /></span><span style="color: #FF8000">// ...<br /></span><span style="color: #0000BB">?&gt;</span></span></code></div>
    </div>

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


 <div class="refsect1 seealso" id="refsect1-function.mkdir-seealso">
  <h3 class="title">Ver también</h3>
  <p class="para">
   <ul class="simplelist">
    <li><span class="function"><a href="function.is-dir.php" class="function" rel="rdfs-seeAlso">is_dir()</a> - Indica si el fichero es un directorio</span></li>
    <li><span class="function"><a href="function.rmdir.php" class="function" rel="rdfs-seeAlso">rmdir()</a> - Elimina un directorio</span></li>
    <li><span class="function"><a href="function.umask.php" class="function" rel="rdfs-seeAlso">umask()</a> - Cambia el &quot;umask&quot; actual</span></li>
   </ul>
  </p>
 </div>


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