©
This document uses PHP Chinese website manual Release
(PECL proctitle >= 0.1.0)
setproctitle — Set the process title
$title
)Sets the process title of the current process.
title
The title to use as the process title.
没有返回值。
Example #1 setproctitle() example
Running the example below will change the process title (visible with ps a for example).
<?php
setproctitle ( "myscript" );
?>
以上例程的输出类似于:
$ ps a PID TTY STAT TIME COMMAND 1168 pts/3 S 0:00 myscript
[#1] james at ifixit dot com [2014-03-28 22:12:39]
You should use cli_set_process_title() ( http://php.net/manual/en/function.cli-set-process-title.php ) instead; it's less dangerous and less buggy, and part of PHP itself as of 5.5.
[#2] zodbd421 at gmail dot com [2013-04-21 05:16:02]
Note that this extension is considered buggy. See https://wiki.php.net/rfc/cli_process_title, which says:
"...but it is incomplete and might lead to memory corruption on Linux (or any OS which does not support setproctitle.
The reason is the extension only has access to original argv[0] (that comes from main()). argv and environ(7) are in contiguous memory space on Linux. The extension presumes that argv[0] can accomodate 128 characters, but usually that is not possible because argv[0] is ??php??. When this happens, the extension will scribble on argv[1], argv[2], etc., and maybe even environ and this can have destructive side effects on the running program."