1
0
mirror of https://github.com/php/doc-ru.git synced 2026-03-25 16:22:18 +01:00
Files
archived-doc-ru/reference/misc/functions/exit.xml
Mikhail Alferov e588cf1b7c Обновление перевода (#654)
Co-authored-by: Sergey Panteleev <sergey@php.net>
2024-01-08 10:25:36 +03:00

182 lines
5.1 KiB
XML
Raw 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: 86e6094e86b84a51d00ab217ac50ce8dde33d82a Maintainer: bfl Status: ready -->
<!-- Reviewed: no -->
<refentry xml:id="function.exit" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
<refname>exit</refname>
<refpurpose>Выводит сообщение и прекращает выполнение текущего скрипта</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type>void</type><methodname>exit</methodname>
<methodparam choice="opt"><type>string</type><parameter>status</parameter></methodparam>
</methodsynopsis>
<methodsynopsis>
<type>void</type><methodname>exit</methodname>
<methodparam><type>int</type><parameter>status</parameter></methodparam>
</methodsynopsis>
<para>
Прекращает выполнение скрипта.
<link linkend="function.register-shutdown-function">Функции отключения</link>
и <link linkend="language.oop5.decon.destructor">деструкторы объекта</link>
будут запущены, даже если была вызвана конструкция <literal>exit</literal>.
</para>
<para>
<literal>exit</literal> — это конструкция языка, и она может быть вызвана
без круглых скобок, если не передаётся параметр <parameter>status</parameter>.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>status</parameter></term>
<listitem>
<para>
Если <parameter>status</parameter> задан в виде строки, то эта
конструкция выведет содержимое <parameter>status</parameter> перед выходом.
</para>
<para>
Если <parameter>status</parameter> задан в виде целого числа (<type>int</type>),
то это значение будет использовано как статус выхода и не будет выведено.
Статусы выхода должны быть в диапазоне от 0 до 254, статус выхода 255 зарезервирован
PHP и не должен использоваться. Статус выхода 0 указывают для успешного
завершения программы.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
&return.void;
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title>Пример использования языковой конструкции <literal>exit</literal></title>
<programlisting role="php">
<![CDATA[
<?php
$filename = '/path/to/data-file';
$file = fopen($filename, 'r')
or exit("Невозможно открыть файл ($filename)");
?>
]]>
</programlisting>
</example>
</para>
<para>
<example>
<title>Пример использования конструкции <literal>exit</literal> со статусом выхода</title>
<programlisting role="php">
<![CDATA[
<?php
// обычный выход из программы
exit;
exit();
exit(0);
// выход с кодом ошибки
exit(1);
exit(0376); // восьмеричный
?>
]]>
</programlisting>
</example>
</para>
<para>
<example>
<title>Функции выключения и деструкторы выполняются независимо</title>
<programlisting role="php">
<![CDATA[
<?php
class Foo
{
public function __destruct()
{
echo 'Деинициализировать: ' . __METHOD__ . '()' . PHP_EOL;
}
}
function shutdown()
{
echo 'Завершить: ' . __FUNCTION__ . '()' . PHP_EOL;
}
$foo = new Foo();
register_shutdown_function('shutdown');
exit();
echo 'Эта строка не будет выведена.';
?>
]]>
</programlisting>
&example.outputs;
<screen>
<![CDATA[
Завершить: shutdown()
Деинициализировать: Foo::__destruct()
]]>
</screen>
</example>
</para>
</refsect1>
<refsect1 role="notes">
&reftitle.notes;
&note.language-construct;
<note>
<para>
Эта языковая конструкция эквивалентна конструкции <function>die</function>.
</para>
</note>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><function>register_shutdown_function</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
-->