如何解决从 php 7.4 迁移到 8DSO 和实时刷新回显
问题是关于从 PHP 7.4 迁移到 PHP 8 以及 php 8 的 DSO 等价物是什么。
我在这里读到 https://docs.cpanel.net/ea4/php/php-8/ PHP 8 和 DSO 不再兼容...
那么有什么选择?
我使用 DSO 的方式:上下文 ob_flush / ob_implicit_flush / 每个“echo”输出并且仍然继续执行。
我尝试的示例:在实时 MEGA 长时间执行 ajax 和实时反馈在执行时返回到 html
<?php
echo 'hello';
// LONG DB RETRIVAL OR API CALL THAT WAITS SERVER ANSWER....
echo 'called';
// PROCESS STUFF
echo 'done';
?>
在这种情况下,当 php 执行时,我看到“你好”,在“被调用”出现后几秒钟,等等。
在我的 DSO 设置中,脚本在开始输出之前不必等待完全完成。
在 PHP 8 中,我们如何实现这一点?
解决方法
DSO aka Apache mod_php 仍然可用于 PHP 8。只有 CPanel 不支持它。如果您不使用 CPanel,则不会受到影响。
在 Ubuntu 上运行以下命令将 PHP8 安装为 Apache 模块
sudo add-apt-repository ppa:ondrej/php
sudo apt-get update
sudo apt install libapache2-mod-php8.0
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。