Podręcznik PHP
Poprzedni |  | Następny

# system

(PHP 3, PHP 4, PHP 5)

system -- Execute an external program and display the output

## Opis

string system ( string command [, int &return_var] )

system() is just like the C version of the function in that it executes the given `command` and outputs the result.

The system() call also tries to automatically flush the web server's output buffer after each line of output if PHP is running as a server module.

If you need to execute a command and have all the data from the command passed directly back without any interference, use the passthru() function.

## Parametry

`command`

  The command that will be executed.

`return_var`

  If the `return_var` argument is present, then the return status of the executed command will be written to this variable.

## Zwracane wartości

Returns the last line of the command output on success, and `FALSE` on failure.

## Przykłady

Przykład 1. system() example

`<?php echo '<pre>'; // Outputs all the result of shellcommand "ls", and returns // the last output line into $last_line. Stores the return value // of the shell command in $retval. $last_line = system('ls', $retval); // Printing additional info echo ' </pre> <hr />Last line of the output: ' . $last_line . ' <hr />Return value: ' . $retval; ?>`

## Notatki

Ostrzeżenie
Jeśli planowane jest przekazanie danych pochodzących od użytkownia do tej finkcji, powinno sie skorzystać z funkcji escapeshellarg() lub escapeshellcmd() aby upewnić się, że użytkownicy nie mogą uruchomić dowolnych poleceń.

> Notatka: Jeśli ta funkcja zostanie użyta do uruchomienia programu który ma działać w tle, należy upewnić się, że wyjście tego programu jest przekierowane do pliku lub innego strumienia wyjściowego. W przeciwnym wypadku PHP zawiesi działanie aż do zakończenia działania wykonywanego programu.

> Notatka: Jeśli tryb bezpieczny został włączony, możliwe jest wykonywanie programów tylko z katalogu określonego przez safe_mode_exec_dir. Ze względów praktycznych, nie można podawać elementów `..` w ścieżce do pliku wykonywalnego.

Ostrzeżenie
Jeśli włączony jest tryb bezpieczny, ciągi zawierające polecenia są filtrowane przez funkcję escapeshellcmd(). W związku z tym, `echo y | echo x` staje się `echo y \| echo x`.

## Patrz także

exec()
passthru()
popen()
escapeshellcmd()
pcntl_exec()
backtick operator

Poprzedni | Spis treści | Następny
shell_exec | Początek rozdziału | PostScript document creation