php-doc-en/reference/info/functions/putenv.xml
Christoph Michael Becker 8fbb603b30 apache_setenv() is somewhat related to putenv()
git-svn-id: https://svn.php.net/repository/phpdoc/en/trunk@337699 c90b9560-bf6c-de11-be94-00142212c4b1
2015-09-02 01:10:24 +00:00

122 lines
3.3 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="function.putenv" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
<refname>putenv</refname>
<refpurpose>Sets the value of an environment variable</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type>bool</type><methodname>putenv</methodname>
<methodparam><type>string</type><parameter>setting</parameter></methodparam>
</methodsynopsis>
<para>
Adds <parameter>setting</parameter> to the server environment. The
environment variable will only exist for the duration of the current
request. At the end of the request the environment is restored to its
original state.
</para>
<para>
Setting certain environment variables may be a potential security breach.
The <literal>safe_mode_allowed_env_vars</literal> directive contains a
comma-delimited list of prefixes. In Safe Mode, the user may only alter
environment variables whose names begin with the prefixes supplied by
this directive. By default, users will only be able to set environment
variables that begin with <literal>PHP_</literal> (e.g.
<literal>PHP_FOO=BAR</literal>). Note: if this directive is empty, PHP
will let the user modify ANY environment variable!
</para>
<para>
The <literal>safe_mode_protected_env_vars</literal> directive contains a
comma-delimited list of environment variables, that the end user won't be
able to change using <function>putenv</function>. These variables will
be protected even if <literal>safe_mode_allowed_env_vars</literal> is set
to allow to change them.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>setting</parameter></term>
<listitem>
<para>
The setting, like <literal>"FOO=BAR"</literal>
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
&return.success;
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title>Setting an environment variable</title>
<programlisting role="php">
<![CDATA[
<?php
putenv("UNIQID=$uniqid");
?>
]]>
</programlisting>
</example>
</para>
</refsect1>
<refsect1 role="notes">
&reftitle.notes;
<warning>
<para>
The <literal>safe_mode_allowed_env_vars</literal> and
<literal>safe_mode_protected_env_vars</literal> directives only take
effect when <link linkend="features.safe-mode">safe_mode</link> is
enabled.
</para>
</warning>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><function>getenv</function></member>
<member><function>apache_setenv</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
-->