1
0
mirror of https://github.com/php/doc-ru.git synced 2026-03-24 15:52:13 +01:00
Files
2024-09-21 04:30:08 +03:00

137 lines
4.6 KiB
XML
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<?xml version="1.0" encoding="utf-8"?>
<!-- EN-Revision: 0c9c2dd669fe9395eaa73d487fbd160f9057429a Maintainer: mch Status: ready -->
<!-- Reviewed: no -->
<refentry xml:id="function.system" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
<refname>system</refname>
<refpurpose>Выполняет внешнюю программу и отображает вывод</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type class="union"><type>string</type><type>false</type></type><methodname>system</methodname>
<methodparam><type>string</type><parameter>command</parameter></methodparam>
<methodparam choice="opt"><type>int</type><parameter role="reference">result_code</parameter><initializer>&null;</initializer></methodparam>
</methodsynopsis>
<para>
Функция <function>system</function> аналогична C-версии функции
в том, что выполняет команду <parameter>command</parameter>
и выводит результат.
</para>
<para>
Вызов функции <function>system</function> также пытается автоматически
сбросить (отправить) буфер вывода веб-сервера после каждой строки вывода,
если PHP работает как модуль сервера.
</para>
<para>
Функция <function>passthru</function> помогает, когда требуется
выполнить команду и вернуть сырые данные из команды
без посредников.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>command</parameter></term>
<listitem>
<para>
Команда, которую выполнит функция.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>result_code</parameter></term>
<listitem>
<para>
Функция запишет в переменную код статуса возврата команды, которую выполнила,
если в аргументе <parameter>result_code</parameter> передали переменную.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
В случае успешного выполнения функция возвращает
последнюю строку вывода команды,
иначе возвращается &false;.
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title>Пример запуска внешней команды и вывода результата функцией <function>system</function></title>
<programlisting role="php">
<![CDATA[
<?php
echo '<pre>';
// Функция выводит полный результат shell-команды ls,
// а последнюю строку вывода возвращает в переменной $last_line.
// Функция сохраняет код возврата команды в переменной $retval
$last_line = system('ls', $retval);
// Выводим дополнительную информацию
echo '
</pre>
<hr />Последняя строка вывода: ' . $last_line . '
<hr />Код возврата: ' . $retval;
?>
]]>
</programlisting>
</example>
</para>
</refsect1>
<refsect1 role="notes">
&reftitle.notes;
&warn.escapeshell;
&note.exec-bg;
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><function>exec</function></member>
<member><function>passthru</function></member>
<member><function>popen</function></member>
<member><function>escapeshellcmd</function></member>
<member><function>pcntl_exec</function></member>
<member><link linkend="language.operators.execution">Оператор исполнения</link></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
-->