Security and Safe Mode
Usando PHP desde la línea de comando
Safe Mode
PHP Manual

## Functions restricted/disabled by safe mode

This is a still probably incomplete and possibly incorrect listing of the functions limited by safe mode.

Safe mode limited functions
Function | Limitations
--- | ---
dbmopen() | Comprueba que los archivos/directorios que va a utilizar, tengan la misma UID que el script que está siendo ejecutado.
dbase_open() | Comprueba que los archivos/directorios que va a utilizar, tengan la misma UID que el script que está siendo ejecutado.
filepro() | Comprueba que los archivos/directorios que va a utilizar, tengan la misma UID que el script que está siendo ejecutado.
filepro_rowcount() | Comprueba que los archivos/directorios que va a utilizar, tengan la misma UID que el script que está siendo ejecutado.
filepro_retrieve() | Comprueba que los archivos/directorios que va a utilizar, tengan la misma UID que el script que está siendo ejecutado.
ifx_* | sql_safe_mode restrictions, (!= safe mode)
ingres_* | sql_safe_mode restrictions, (!= safe mode)
mysql_* | sql_safe_mode restrictions, (!= safe mode)
pg_lo_import() | Comprueba que los archivos/directorios que va a utilizar, tengan la misma UID que el script que está siendo ejecutado.
posix_mkfifo() | Comprueba si el directorio que va a utilizar, tiene la misma UID que el script que está siendo ejecutado.
putenv() | Obeys the safe_mode_protected_env_vars and safe_mode_allowed_env_vars ini-directives. See also the documentation on putenv()
move_uploaded_file() | Comprueba que los archivos/directorios que va a utilizar, tengan la misma UID que el script que está siendo ejecutado.
chdir() | Comprueba si el directorio que va a utilizar, tiene la misma UID que el script que está siendo ejecutado.
dl() | Esta función no está habilitada en safe-mode (modo-seguro)
backtick operator | Esta función no está habilitada en safe-mode (modo-seguro)
shell_exec() (functional equivalent of backticks) | Esta función no está habilitada en safe-mode (modo-seguro)
exec() | You can only execute executables within the safe_mode_exec_dir. For practical reasons it's currently not allowed to have .. components in the path to the executable. escapeshellcmd() is executed on the argument of this function.
system() | You can only execute executables within the safe_mode_exec_dir. For practical reasons it's currently not allowed to have .. components in the path to the executable. escapeshellcmd() is executed on the argument of this function.
passthru() | You can only execute executables within the safe_mode_exec_dir. For practical reasons it's currently not allowed to have .. components in the path to the executable. escapeshellcmd() is executed on the argument of this function.
popen() | You can only execute executables within the safe_mode_exec_dir. For practical reasons it's currently not allowed to have .. components in the path to the executable. escapeshellcmd() is executed on the argument of this function.
fopen() | Comprueba si el directorio que va a utilizar, tiene la misma UID que el script que está siendo ejecutado.
mkdir() | Comprueba si el directorio que va a utilizar, tiene la misma UID que el script que está siendo ejecutado.
rmdir() | Comprueba si el directorio que va a utilizar, tiene la misma UID que el script que está siendo ejecutado.
rename() | Comprueba que los archivos/directorios que va a utilizar, tengan la misma UID que el script que está siendo ejecutado. Comprueba si el directorio que va a utilizar, tiene la misma UID que el script que está siendo ejecutado.
unlink() | Comprueba que los archivos/directorios que va a utilizar, tengan la misma UID que el script que está siendo ejecutado. Comprueba si el directorio que va a utilizar, tiene la misma UID que el script que está siendo ejecutado.
copy() | Comprueba que los archivos/directorios que va a utilizar, tengan la misma UID que el script que está siendo ejecutado. Comprueba si el directorio que va a utilizar, tiene la misma UID que el script que está siendo ejecutado. (on `source` and `target` )
chgrp() | Comprueba que los archivos/directorios que va a utilizar, tengan la misma UID que el script que está siendo ejecutado.
chown() | Comprueba que los archivos/directorios que va a utilizar, tengan la misma UID que el script que está siendo ejecutado.
chmod() | Comprueba que los archivos/directorios que va a utilizar, tengan la misma UID que el script que está siendo ejecutado. In addition, you cannot set the SUID, SGID and sticky bits
touch() | Comprueba que los archivos/directorios que va a utilizar, tengan la misma UID que el script que está siendo ejecutado. Comprueba si el directorio que va a utilizar, tiene la misma UID que el script que está siendo ejecutado.
symlink() | Comprueba que los archivos/directorios que va a utilizar, tengan la misma UID que el script que está siendo ejecutado. Comprueba si el directorio que va a utilizar, tiene la misma UID que el script que está siendo ejecutado. (note: only the target is checked)
link() | Comprueba que los archivos/directorios que va a utilizar, tengan la misma UID que el script que está siendo ejecutado. Comprueba si el directorio que va a utilizar, tiene la misma UID que el script que está siendo ejecutado. (note: only the target is checked)
apache_request_headers() | In safe mode, headers beginning with authorization (case-insensitive) will not be returned.
header() | In safe mode, the uid of the script is added to the realm part of the WWW-Authenticate header if you set this header (used for HTTP Authentication).
PHP_AUTH variables | In safe mode, the variables PHP_AUTH_USER, PHP_AUTH_PW, and AUTH_TYPE are not available in $_SERVER. Regardless, you can still use REMOTE_USER for the USER. (note: only affected since PHP 4.3.0)
highlight_file(), show_source() | Comprueba que los archivos/directorios que va a utilizar, tengan la misma UID que el script que está siendo ejecutado. Comprueba si el directorio que va a utilizar, tiene la misma UID que el script que está siendo ejecutado. (note: only affected since PHP 4.2.1)
parse_ini_file() | Comprueba que los archivos/directorios que va a utilizar, tengan la misma UID que el script que está siendo ejecutado. Comprueba si el directorio que va a utilizar, tiene la misma UID que el script que está siendo ejecutado. (note: only affected since PHP 4.2.1)
set_time_limit() | Has no effect when PHP is running in safe mode.
max_execution_time | Has no effect when PHP is running in safe mode.
mail() | In safe mode, the fifth parameter is disabled. (note: only affected since PHP 4.2.3)
session_start() | The owner of a script must be the same as owner of a session.save_path directory if the default files session.save_handler is used.
All filesystem and stream functions. | Comprueba que los archivos/directorios que va a utilizar, tengan la misma UID que el script que está siendo ejecutado. Comprueba si el directorio que va a utilizar, tiene la misma UID que el script que está siendo ejecutado. (see the safe_mode_include_dir php.ini option.

Security and Safe Mode
Usando PHP desde la línea de comando
Safe Mode
PHP Manual