Get status unserialize error
- Dominant language
- PHP
- Stars
- 11.6k
- Forks
- 2.2k
- Avg merge
- 11h 30m
- Merged PRs (30d)
- 3
Description
I get status in interval from worker. At file Worker.php in method formatStatusData have code
```
$info = \file($statistics_file, \FILE_IGNORE_NEW_LINES);
if (!$info) {
return '';
}
$status_str = '';
$current_total_request = array();
$worker_info = \unserialize($info[0]);
\ksort($worker_info, SORT_NUMERIC);
```
But some time situation like this
array of $info is:
```
Log file
(
[0] => --------------------------------------------------------------------- WORKERMAN CONNECTION STATUS --------------------------------------------------------------------------------
[1] => PID Worker CID Trans Protocol ipv4 ipv6 Recv-Q Send-Q Bytes-R Bytes-W Status Local Address Foreign Address
[2] => 20788 6.01M websocket://0.0.0.0:8090 none 2 0 3 219
[3] => 20788 none 2 tcp Redis 1 0 0B 0B 1.5KB 1.7KB ESTABLISHED 127.0.0.1:60376 127.0.0.1:6379
[4] => 20788 none 3 tcp WsProtocol 1 0 0B 0B 22.7KB 110.1KB ESTABLISHED 127.0.0.1:57902 127.0.0.1:8081
)
```
And i get error :
```
TypeError: ksort(): Argument #1 ($array) must be of type array, bool given in /var/www/html/vendor/workerman/workerman/Worker.php:1068
Stack trace:
#0 /var/www/html/vendor/workerman/workerman/Worker.php(1068): ksort()
#1 /var/www/html/vendor/workerman/workerman/Worker.php(969): Workerman\Worker::formatStatusData()
#2 /var/www/html/vendor/workerman/workerman/Worker.php(552): Workerman\Worker::parseCommand()
#3 /var/www/html/app/server/model/CommandModel.php(68): Workerman\Worker::runAll()
#4 /var/www/html/core/Cli.php(47): Fantasy\App\server\model\CommandModel::status()
```
```
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.