1
0
mirror of https://github.com/php/doc-es.git synced 2026-03-26 08:22:08 +01:00
Files
archived-doc-es/reference/filesystem/functions/popen.xml
Pedro Antonio Gil Rodríguez 60feb8d147 Actualización a la últma versión
git-svn-id: https://svn.php.net/repository/phpdoc/es/trunk@333730 c90b9560-bf6c-de11-be94-00142212c4b1
2014-06-08 14:50:17 +00:00

149 lines
3.8 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 8dd00a873bd77dc347397f1147fee3fba4cd1b4c Maintainer: seros Status: ready -->
<!-- Reviewed: no -->
<refentry xmlns="http://docbook.org/ns/docbook" xml:id="function.popen">
<refnamediv>
<refname>popen</refname>
<refpurpose>Abre un proceso de un puntero a un fichero</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type>resource</type><methodname>popen</methodname>
<methodparam><type>string</type><parameter>command</parameter></methodparam>
<methodparam><type>string</type><parameter>mode</parameter></methodparam>
</methodsynopsis>
<para>
Abre una tubería hacia un proceso ejecutado bifurcando el comando dado
por <parameter>command</parameter>.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>command</parameter></term>
<listitem>
<para>
El comando
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>mode</parameter></term>
<listitem>
<para>
El modo
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Devuelve un puntero al fichero idéntico al devuelto por
<function>fopen</function>, excepto que es uni-direccional (sólo
se puede usar para lectura o escritura) y debe ser cerrado con
<function>pclose</function>. Este puntero se puede usar con
<function>fgets</function>, <function>fgetss</function>, y
<function>fwrite</function>. Cuando el modo es 'r', el puntero al
fichero devuelto iguala al STDOUT del comando, cuando el modo
es 'w', el puntero al fichero devuelto iguala al STDIN del
comando.
</para>
<para>
Si se produjo un error, devuelve &false;.
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title>Ejemplo de <function>popen</function></title>
<programlisting role="php">
<![CDATA[
<?php
$gestor = popen("/bin/ls", "r");
?>
]]>
</programlisting>
</example>
</para>
<para>
Si el comando a ejecutar no puede ser encontrado, se
devuelve un recurso válido. Esto puede parecer extraño, pero tiene sentido;
permite el acceso a cualquier mensaje de error devuelto por el intérprete de comandos:
<example>
<title>Ejemplo de <function>popen</function></title>
<programlisting role="php">
<![CDATA[
<?php
error_reporting(E_ALL);
/* Añade redirección, por lo que podemos obtener stderr. */
$gestor = popen('/ruta/al/ejecutable 2>&1', 'r');
echo "'$gestor'; " . gettype($gestor) . "\n";
$leer = fread($gestor, 2096);
echo $leer;
pclose($gestor);
?>
]]>
</programlisting>
</example>
</para>
</refsect1>
<refsect1 role="notes">
&reftitle.notes;
<note>
<para>
Si está buscando un soporte bi-direccional (dos-vías), use
<function>proc_open</function>.
</para>
</note>
&note.exec-path;
&warn.sm.exec;
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><function>pclose</function></member>
<member><function>fopen</function></member>
<member><function>proc_open</function></member>
</simplelist>
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->