php - 在 PHP 循环中为每个 SHELL_EXEC 设置超时
问题描述
如何在 php 循环中管理 shell_exec() 超时的最佳方法是什么?
我试图timeout 10
在命令前面添加,但它在第一次失败时打破了整个循环。我希望每个命令在 10 次循环中最多只能执行 10 秒,并在成功时返回数据。
<?php
function ShellC($params) {
$n = 0;
foreach ($params as $param) {
if ( ++$n < 11 ) {
$data = shell_exec('timeout 10 command_execute_param 2>/dev/null');
if ( !empty($data) ) {
return $data;
}
}
}
return false;
}
谢谢您的帮助!
解决方案
推荐阅读
- flutter - 在不丢失本地数据的情况下更新 Android 应用程序
- selenium - 移动仿真不适用于 Chrome 版本 78.0.3904.97
- html - 删除带有日期输入的 vuetify v-text 字段上的向下箭头
- c++ - 有没有办法复制派生类指针的向量而不将其转换为基类?
- android - 以下项目选项已弃用并已删除:空
- c++ - 与 cmake 铿锵。target_include_directories "没有这样的文件或目录"
- arduino - Charlieplexing LED
- ssl - 如何在 CentOS 7/8 上信任自签名 SSL?
- csv - 要根据 RFC 4180 验证 CSV 文件,规则是“记录中的最后一个字段不能跟逗号”。错误的?
- python - 使用 Python 将文本中的行与未知行交换