cli_set_process_title
(PHP 5 >= 5.5.0, PHP 7)
cli_set_process_title — Sets the process title
说明
cli_set_process_title ( string
$title
) : boolSets the process title visible in tools such as top and ps. This function is available only in CLI mode.
参数
-
title
-
The new title.
返回值
成功时返回 TRUE
, 或者在失败时返回 FALSE
。
错误/异常
An E_WARNING
will be generated if the operating system is unsupported.
范例
Example #1 cli_set_process_title() example
<?php
$title = "My Amazing PHP Script";
$pid = getmypid(); // you can use this to see your process title in ps
if (!cli_set_process_title($title)) {
echo "Unable to set process title for PID $pid...n";
exit(1);
} else {
echo "The process title '$title' for PID $pid has been set for your process!n";
sleep(5);
}
?>
参见
- cli_get_process_title() – Returns the current process title
- setproctitle() – Set the process title
用户贡献的笔记
code at edoceo dot com
Setting proc title on PHP based daemons is pretty sweet.
aaron dot mason+php at thats-too-much dot info
In Windows, this function will set the Command Prompt window title, which is restored to the previous setting once the script finishes. If you need to do this in 5.5.X and below, you'll need to use system() to run the title command.
Aurelien Marchand
Please note that the function might be inconsistent depending on your system.
On 2 of my systems (CentOS 7.7 and Linux Mint 18.3), setting the title will work for ps but not for top.
<?php
cli_set_process_title("sleeping-daemon");
sleep(100);
/*
*ps* returns
25072 pts/2 S 0:00 sleeping-daemon
*top* returns
25072 aurelien 20 0 285848 23256 16856 S 0.0 0.3 0:00.01 php
*/
MJ
Beware that if you kill the process via console the original command line will appear.