我的php OCI8模块存在问题。
我有一个php工作人员处理一些东西,我意识到一旦有一个开放的oci连接,php脚本会忽略任何中断信号:
<?php
$db = oci_connect(...);
while (true) {
// do something
}
没有办法优雅地停止此脚本。至少我知道。
我已经尝试使用pcntl_signal()
来创建我的自定义信号处理程序,虽然不会工作。
现在我需要手动终止这个过程。
任何人都有此问题或使用oci处理SIGINT
的方法吗?
喝彩!
答案 0 :(得分:0)
您可以尝试以下代码:
declare(ticks=1); //mandatory
oci_connect(...);
pcntl_signal(SIGINT, 'sig_handler'); //set handler for signal
$i = 0;
while(true) {
echo $i;
$i++;
}
//will handle the ctrl+c. Put whatever you want to do
function sig_handler() {
echo "DIE DIE DIE!";
die();
}