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/info/functions/getenv.xml
Mikhail Alferov aa15d381f2 Update getenv.xml
2024-03-18 12:30:56 +03:00

172 lines
6.4 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: 1299a9808782769bba9f6a48bf52cb1c68182e78 Maintainer: tmn Status: ready -->
<!-- Reviewed: no -->
<refentry xml:id="function.getenv" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>getenv</refname>
<refpurpose>Получает значение одной или всех переменных окружения</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type class="union"><type>string</type><type>array</type><type>false</type></type><methodname>getenv</methodname>
<methodparam choice="opt"><type class="union"><type>string</type><type>null</type></type><parameter>name</parameter><initializer>&null;</initializer></methodparam>
<methodparam choice="opt"><type>bool</type><parameter>local_only</parameter><initializer>&false;</initializer></methodparam>
</methodsynopsis>
<para>
Функция получает значение одной или всех переменных окружения.
</para>
<para>
Список переменных окружения также выводит функция
<function>phpinfo</function>. Многие из этих переменных описывает
раздел 4.1. Request Meta-Variables стандарта
<link xlink:href="&url.rfc;3875">RFC 3875</link>.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>name</parameter></term>
<listitem>
<para>
Имя переменной в виде строки (&string;) или &null;.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>local_only</parameter></term>
<listitem>
<para>
Функция возвращает только локальные переменные окружения,
которые установила операционная система или команда putenv, если
для этого параметра установили значение &true;.
Параметр повлияет на результат работы функции, только если
значение параметра <parameter>name</parameter> — строка (&string;).
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Функция возвращает значение переменной окружения <parameter>name</parameter>
или &false;, если переменная окружения <parameter>name</parameter> не существует.
Если значение параметра <parameter>name</parameter> равно &null;, функция
возвращает все переменные окружения в виде ассоциативного массива (<type>array</type>).
</para>
</refsect1>
<refsect1 role="changelog">
&reftitle.changelog;
<informaltable>
<tgroup cols="2">
<thead>
<row>
<entry>&Version;</entry>
<entry>&Description;</entry>
</row>
</thead>
<tbody>
<row>
<entry>8.0.0</entry>
<entry>
Параметр <parameter>name</parameter> теперь принимает значение &null;.
</entry>
</row>
<row>
<entry>7.1.0</entry>
<entry>
Теперь, чтобы получить ассоциативный массив (<type>array</type>) всех
переменных окружения, параметр <parameter>name</parameter> можно не указывать.
</entry>
</row>
<row>
<entry>7.0.9</entry>
<entry>
Добавлен параметр <parameter>local_only</parameter>.
</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title>Пример использования функции <function>getenv</function></title>
<programlisting role="php">
<![CDATA[
<?php
// Пример вызова функции getenv()
$ip = getenv('REMOTE_ADDR');
// Или просто получаем значение из суперглобальной переменной $_SERVER или $_ENV
$ip = $_SERVER['REMOTE_ADDR'];
// Надёжно получаем значение переменной окружения независимо от того,
// установили ли или нет значение через интерфейс SAPI или изменили командой putenv
$ip = getenv('REMOTE_ADDR', true) ?: getenv('REMOTE_ADDR');
?>
]]>
</programlisting>
</example>
</para>
</refsect1>
<refsect1 role="notes">
&reftitle.notes;
<warning>
<para>
Если PHP запустили через интерфейс SAPI наподобие Fast CGI, эта функция будет возвращать
значения переменных окружения, которые установили через SAPI, даже если локальную переменную
с таким же именем установили функцией <function>putenv</function>.
Устанавливайте параметр <parameter>local_only</parameter>, чтобы функция возвращала значение
локальных переменных окружения.
</para>
</warning>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><function>putenv</function></member>
<member><function>apache_getenv</function></member>
<member><link linkend="language.variables.superglobals">Суперглобальные переменные</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
-->