<HTML ><HEAD ><TITLE >Functions restricted/disabled by safe mode</TITLE ><META NAME="GENERATOR" CONTENT="Modular DocBook HTML Stylesheet Version 1.7"><LINK REL="HOME" TITLE="PHP Manual" HREF="index.html"><LINK REL="UP" TITLE="Safe Mode" HREF="features.safe-mode.html"><LINK REL="PREVIOUS" TITLE="Safe Mode" HREF="features.safe-mode.html"><LINK REL="NEXT" TITLE="Using PHP from the command line" HREF="features.commandline.html"><META HTTP-EQUIV="Content-type" CONTENT="text/html; charset=ISO-8859-1"></HEAD ><BODY CLASS="sect1" BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#0000FF" VLINK="#840084" ALINK="#0000FF" ><DIV CLASS="NAVHEADER" ><TABLE SUMMARY="Header navigation table" WIDTH="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0" ><TR ><TH COLSPAN="3" ALIGN="center" >PHP Manual</TH ></TR ><TR ><TD WIDTH="10%" ALIGN="left" VALIGN="bottom" ><A HREF="features.safe-mode.html" ACCESSKEY="P" >Prev</A ></TD ><TD WIDTH="80%" ALIGN="center" VALIGN="bottom" >Chapter 22. Safe Mode</TD ><TD WIDTH="10%" ALIGN="right" VALIGN="bottom" ><A HREF="features.commandline.html" ACCESSKEY="N" >Next</A ></TD ></TR ></TABLE ><HR ALIGN="LEFT" WIDTH="100%"></DIV ><DIV CLASS="sect1" ><H1 CLASS="sect1" ><A NAME="features.safe-mode.functions" ></A >Functions restricted/disabled by safe mode</H1 ><P > This is a still probably incomplete and possibly incorrect listing of the functions limited by <A HREF="features.safe-mode.html" >safe mode</A >. <DIV CLASS="table" ><A NAME="AEN6254" ></A ><P ><B >Table 22-2. Safe mode limited functions</B ></P ><TABLE BORDER="1" CLASS="CALSTABLE" ><THEAD ><TR ><TH ALIGN="LEFT" VALIGN="MIDDLE" >Function</TH ><TH ALIGN="LEFT" VALIGN="MIDDLE" >Limitations</TH ></TR ></THEAD ><TBODY ><TR ><TD ALIGN="LEFT" VALIGN="MIDDLE" ><A HREF="function.dbmopen.html" ><B CLASS="function" >dbmopen()</B ></A ></TD ><TD ALIGN="LEFT" VALIGN="MIDDLE" >Checks whether the files or directories you are about to operate on have the same UID (owner) as the script that is being executed.</TD ></TR ><TR ><TD ALIGN="LEFT" VALIGN="MIDDLE" ><A HREF="function.dbase-open.html" ><B CLASS="function" >dbase_open()</B ></A ></TD ><TD ALIGN="LEFT" VALIGN="MIDDLE" >Checks whether the files or directories you are about to operate on have the same UID (owner) as the script that is being executed.</TD ></TR ><TR ><TD ALIGN="LEFT" VALIGN="MIDDLE" ><A HREF="function.filepro.html" ><B CLASS="function" >filepro()</B ></A ></TD ><TD ALIGN="LEFT" VALIGN="MIDDLE" >Checks whether the files or directories you are about to operate on have the same UID (owner) as the script that is being executed.</TD ></TR ><TR ><TD ALIGN="LEFT" VALIGN="MIDDLE" ><A HREF="function.filepro-rowcount.html" ><B CLASS="function" >filepro_rowcount()</B ></A ></TD ><TD ALIGN="LEFT" VALIGN="MIDDLE" >Checks whether the files or directories you are about to operate on have the same UID (owner) as the script that is being executed.</TD ></TR ><TR ><TD ALIGN="LEFT" VALIGN="MIDDLE" ><A HREF="function.filepro-retrieve.html" ><B CLASS="function" >filepro_retrieve()</B ></A ></TD ><TD ALIGN="LEFT" VALIGN="MIDDLE" >Checks whether the files or directories you are about to operate on have the same UID (owner) as the script that is being executed.</TD ></TR ><TR ><TD ALIGN="LEFT" VALIGN="MIDDLE" ><B CLASS="function" >ifx_*()</B ></TD ><TD ALIGN="LEFT" VALIGN="MIDDLE" >sql_safe_mode restrictions, (!= safe mode)</TD ></TR ><TR ><TD ALIGN="LEFT" VALIGN="MIDDLE" ><B CLASS="function" >ingres_*()</B ></TD ><TD ALIGN="LEFT" VALIGN="MIDDLE" >sql_safe_mode restrictions, (!= safe mode)</TD ></TR ><TR ><TD ALIGN="LEFT" VALIGN="MIDDLE" ><B CLASS="function" >mysql_*()</B ></TD ><TD ALIGN="LEFT" VALIGN="MIDDLE" >sql_safe_mode restrictions, (!= safe mode)</TD ></TR ><TR ><TD ALIGN="LEFT" VALIGN="MIDDLE" ><B CLASS="function" >pg_loimport()</B ></TD ><TD ALIGN="LEFT" VALIGN="MIDDLE" >Checks whether the files or directories you are about to operate on have the same UID (owner) as the script that is being executed.</TD ></TR ><TR ><TD ALIGN="LEFT" VALIGN="MIDDLE" ><A HREF="function.posix-mkfifo.html" ><B CLASS="function" >posix_mkfifo()</B ></A ></TD ><TD ALIGN="LEFT" VALIGN="MIDDLE" >Checks whether the directory in which you are about to operate has the same UID (owner) as the script that is being executed.</TD ></TR ><TR ><TD ALIGN="LEFT" VALIGN="MIDDLE" ><A HREF="function.putenv.html" ><B CLASS="function" >putenv()</B ></A ></TD ><TD ALIGN="LEFT" VALIGN="MIDDLE" >Obeys the safe_mode_protected_env_vars and safe_mode_allowed_env_vars ini-directives. See also the documentation on <A HREF="function.putenv.html" ><B CLASS="function" >putenv()</B ></A ></TD ></TR ><TR ><TD ALIGN="LEFT" VALIGN="MIDDLE" ><A HREF="function.move-uploaded-file.html" ><B CLASS="function" >move_uploaded_file()</B ></A ></TD ><TD ALIGN="LEFT" VALIGN="MIDDLE" >Checks whether the files or directories you are about to operate on have the same UID (owner) as the script that is being executed. </TD ></TR ><TR ><TD ALIGN="LEFT" VALIGN="MIDDLE" ><A HREF="function.chdir.html" ><B CLASS="function" >chdir()</B ></A ></TD ><TD ALIGN="LEFT" VALIGN="MIDDLE" >Checks whether the directory in which you are about to operate has the same UID (owner) as the script that is being executed.</TD ></TR ><TR ><TD ALIGN="LEFT" VALIGN="MIDDLE" ><A HREF="function.dl.html" ><B CLASS="function" >dl()</B ></A ></TD ><TD ALIGN="LEFT" VALIGN="MIDDLE" >This function is disabled in <A HREF="features.safe-mode.html" >safe mode</A >.</TD ></TR ><TR ><TD ALIGN="LEFT" VALIGN="MIDDLE" ><A HREF="language.operators.execution.html" >backtick operator</A ></TD ><TD ALIGN="LEFT" VALIGN="MIDDLE" >This function is disabled in <A HREF="features.safe-mode.html" >safe mode</A >.</TD ></TR ><TR ><TD ALIGN="LEFT" VALIGN="MIDDLE" ><A HREF="function.shell-exec.html" ><B CLASS="function" >shell_exec()</B ></A > (functional equivalent of backticks)</TD ><TD ALIGN="LEFT" VALIGN="MIDDLE" >This function is disabled in <A HREF="features.safe-mode.html" >safe mode</A >.</TD ></TR ><TR ><TD ALIGN="LEFT" VALIGN="MIDDLE" ><A HREF="function.exec.html" ><B CLASS="function" >exec()</B ></A ></TD ><TD ALIGN="LEFT" VALIGN="MIDDLE" >You can only execute executables within the <A HREF="features.safe-mode.html#ini.safe-mode-exec-dir" >safe_mode_exec_dir</A >. For practical reasons it's currently not allowed to have <TT CLASS="literal" >..</TT > components in the path to the executable.</TD ></TR ><TR ><TD ALIGN="LEFT" VALIGN="MIDDLE" ><A HREF="function.system.html" ><B CLASS="function" >system()</B ></A ></TD ><TD ALIGN="LEFT" VALIGN="MIDDLE" >You can only execute executables within the <A HREF="features.safe-mode.html#ini.safe-mode-exec-dir" >safe_mode_exec_dir</A >. For practical reasons it's currently not allowed to have <TT CLASS="literal" >..</TT > components in the path to the executable.</TD ></TR ><TR ><TD ALIGN="LEFT" VALIGN="MIDDLE" ><A HREF="function.passthru.html" ><B CLASS="function" >passthru()</B ></A ></TD ><TD ALIGN="LEFT" VALIGN="MIDDLE" >You can only execute executables within the <A HREF="features.safe-mode.html#ini.safe-mode-exec-dir" >safe_mode_exec_dir</A >. For practical reasons it's currently not allowed to have <TT CLASS="literal" >..</TT > components in the path to the executable.</TD ></TR ><TR ><TD ALIGN="LEFT" VALIGN="MIDDLE" ><A HREF="function.popen.html" ><B CLASS="function" >popen()</B ></A ></TD ><TD ALIGN="LEFT" VALIGN="MIDDLE" >You can only execute executables within the <A HREF="features.safe-mode.html#ini.safe-mode-exec-dir" >safe_mode_exec_dir</A >. For practical reasons it's currently not allowed to have <TT CLASS="literal" >..</TT > components in the path to the executable.</TD ></TR ><TR ><TD ALIGN="LEFT" VALIGN="MIDDLE" ><A HREF="function.mkdir.html" ><B CLASS="function" >mkdir()</B ></A ></TD ><TD ALIGN="LEFT" VALIGN="MIDDLE" >Checks whether the directory in which you are about to operate has the same UID (owner) as the script that is being executed.</TD ></TR ><TR ><TD ALIGN="LEFT" VALIGN="MIDDLE" ><A HREF="function.rmdir.html" ><B CLASS="function" >rmdir()</B ></A ></TD ><TD ALIGN="LEFT" VALIGN="MIDDLE" >Checks whether the files or directories you are about to operate on have the same UID (owner) as the script that is being executed.</TD ></TR ><TR ><TD ALIGN="LEFT" VALIGN="MIDDLE" ><A HREF="function.rename.html" ><B CLASS="function" >rename()</B ></A ></TD ><TD ALIGN="LEFT" VALIGN="MIDDLE" >Checks whether the files or directories you are about to operate on have the same UID (owner) as the script that is being executed. Checks whether the directory in which you are about to operate has the same UID (owner) as the script that is being executed.</TD ></TR ><TR ><TD ALIGN="LEFT" VALIGN="MIDDLE" ><A HREF="function.unlink.html" ><B CLASS="function" >unlink()</B ></A ></TD ><TD ALIGN="LEFT" VALIGN="MIDDLE" >Checks whether the files or directories you are about to operate on have the same UID (owner) as the script that is being executed. Checks whether the directory in which you are about to operate has the same UID (owner) as the script that is being executed.</TD ></TR ><TR ><TD ALIGN="LEFT" VALIGN="MIDDLE" ><A HREF="function.copy.html" ><B CLASS="function" >copy()</B ></A ></TD ><TD ALIGN="LEFT" VALIGN="MIDDLE" >Checks whether the files or directories you are about to operate on have the same UID (owner) as the script that is being executed. Checks whether the directory in which you are about to operate has the same UID (owner) as the script that is being executed. (on <TT CLASS="parameter" ><I >source</I ></TT > and <TT CLASS="parameter" ><I >target</I ></TT >) </TD ></TR ><TR ><TD ALIGN="LEFT" VALIGN="MIDDLE" ><A HREF="function.chgrp.html" ><B CLASS="function" >chgrp()</B ></A ></TD ><TD ALIGN="LEFT" VALIGN="MIDDLE" >Checks whether the files or directories you are about to operate on have the same UID (owner) as the script that is being executed.</TD ></TR ><TR ><TD ALIGN="LEFT" VALIGN="MIDDLE" ><A HREF="function.chown.html" ><B CLASS="function" >chown()</B ></A ></TD ><TD ALIGN="LEFT" VALIGN="MIDDLE" >Checks whether the files or directories you are about to operate on have the same UID (owner) as the script that is being executed.</TD ></TR ><TR ><TD ALIGN="LEFT" VALIGN="MIDDLE" ><A HREF="function.chmod.html" ><B CLASS="function" >chmod()</B ></A ></TD ><TD ALIGN="LEFT" VALIGN="MIDDLE" >Checks whether the files or directories you are about to operate on have the same UID (owner) as the script that is being executed. In addition, you cannot set the SUID, SGID and sticky bits</TD ></TR ><TR ><TD ALIGN="LEFT" VALIGN="MIDDLE" ><A HREF="function.touch.html" ><B CLASS="function" >touch()</B ></A ></TD ><TD ALIGN="LEFT" VALIGN="MIDDLE" >Checks whether the files or directories you are about to operate on have the same UID (owner) as the script that is being executed. Checks whether the directory in which you are about to operate has the same UID (owner) as the script that is being executed.</TD ></TR ><TR ><TD ALIGN="LEFT" VALIGN="MIDDLE" ><A HREF="function.symlink.html" ><B CLASS="function" >symlink()</B ></A ></TD ><TD ALIGN="LEFT" VALIGN="MIDDLE" >Checks whether the files or directories you are about to operate on have the same UID (owner) as the script that is being executed. Checks whether the directory in which you are about to operate has the same UID (owner) as the script that is being executed. (note: only the target is checked)</TD ></TR ><TR ><TD ALIGN="LEFT" VALIGN="MIDDLE" ><A HREF="function.link.html" ><B CLASS="function" >link()</B ></A ></TD ><TD ALIGN="LEFT" VALIGN="MIDDLE" >Checks whether the files or directories you are about to operate on have the same UID (owner) as the script that is being executed. Checks whether the directory in which you are about to operate has the same UID (owner) as the script that is being executed. (note: only the target is checked)</TD ></TR ><TR ><TD ALIGN="LEFT" VALIGN="MIDDLE" ><A HREF="function.getallheaders.html" ><B CLASS="function" >getallheaders()</B ></A ></TD ><TD ALIGN="LEFT" VALIGN="MIDDLE" >In safe mode, headers beginning with 'authorization' (case-insensitive) will not be returned. Warning: this is broken with the aol-server implementation of <A HREF="function.getallheaders.html" ><B CLASS="function" >getallheaders()</B ></A >!</TD ></TR ><TR ><TD ALIGN="LEFT" VALIGN="MIDDLE" ><A HREF="function.header.html" ><B CLASS="function" >header()</B ></A ></TD ><TD ALIGN="LEFT" VALIGN="MIDDLE" >In safe mode, the uid of the script is added to the <TT CLASS="literal" >realm</TT > part of the <TT CLASS="literal" >WWW-Authenticate</TT > header if you set this header (used for HTTP Authentication).</TD ></TR ><TR ><TD ALIGN="LEFT" VALIGN="MIDDLE" ><A HREF="features.http-auth.html" >PHP_AUTH variables</A ></TD ><TD ALIGN="LEFT" VALIGN="MIDDLE" > In safe mode, the variables <TT CLASS="varname" >PHP_AUTH_USER</TT >, <TT CLASS="varname" >PHP_AUTH_PW</TT >, and <TT CLASS="varname" >PHP_AUTH_TYPE</TT > are not available in <TT CLASS="varname" >$_SERVER</TT >. Regardless, you can still use <TT CLASS="varname" >REMOTE_USER</TT > for the USER. (note: only affected since PHP 4.3.0) </TD ></TR ><TR ><TD ALIGN="LEFT" VALIGN="MIDDLE" > <A HREF="function.highlight-file.html" ><B CLASS="function" >highlight_file()</B ></A >, <A HREF="function.show-source.html" ><B CLASS="function" >show_source()</B ></A > </TD ><TD ALIGN="LEFT" VALIGN="MIDDLE" > Checks whether the files or directories you are about to operate on have the same UID (owner) as the script that is being executed. Checks whether the directory in which you are about to operate has the same UID (owner) as the script that is being executed. (note: only affected since PHP 4.2.1) </TD ></TR ><TR ><TD ALIGN="LEFT" VALIGN="MIDDLE" > <A HREF="function.parse-ini-file.html" ><B CLASS="function" >parse_ini_file()</B ></A > </TD ><TD ALIGN="LEFT" VALIGN="MIDDLE" > Checks whether the files or directories you are about to operate on have the same UID (owner) as the script that is being executed. Checks whether the directory in which you are about to operate has the same UID (owner) as the script that is being executed. (note: only affected since PHP 4.2.1) </TD ></TR ><TR ><TD ALIGN="LEFT" VALIGN="MIDDLE" >Any function that uses <TT CLASS="filename" >php4/main/fopen_wrappers.c</TT > </TD ><TD ALIGN="LEFT" VALIGN="MIDDLE" >??</TD ></TR ></TBODY ></TABLE ></DIV > </P ></DIV ><DIV CLASS="NAVFOOTER" ><HR ALIGN="LEFT" WIDTH="100%"><TABLE SUMMARY="Footer navigation table" WIDTH="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0" ><TR ><TD WIDTH="33%" ALIGN="left" VALIGN="top" ><A HREF="features.safe-mode.html" ACCESSKEY="P" >Prev</A ></TD ><TD WIDTH="34%" ALIGN="center" VALIGN="top" ><A HREF="index.html" ACCESSKEY="H" >Home</A ></TD ><TD WIDTH="33%" ALIGN="right" VALIGN="top" ><A HREF="features.commandline.html" ACCESSKEY="N" >Next</A ></TD ></TR ><TR ><TD WIDTH="33%" ALIGN="left" VALIGN="top" >Safe Mode</TD ><TD WIDTH="34%" ALIGN="center" VALIGN="top" ><A HREF="features.safe-mode.html" ACCESSKEY="U" >Up</A ></TD ><TD WIDTH="33%" ALIGN="right" VALIGN="top" >Using PHP from the command line</TD ></TR ></TABLE ></DIV ></BODY ></HTML >