将 php 文件置于 Linux 的后台

Put php file in the background on Linux

我有一个 PHP 文件,用于检查 MySQL 数据库中的字段是否为空。 如果该字段为空,则 PHP 是更新。 我想在 Linux 的背景中为这个文件着色。 如果用户创建记录,后台的PHP文件将被更新。 我的 PHP 代码:

<?php
$mysqli = mysqli_connect("localhost","name","pass","database");
$query = 'UPDATE  users SET  permissions =  "content" WHERE permissions = ""';
$n = $mysqli->query($query);
$query = "SELECT * from users";
$result = $mysqli->query($query);
$row = $result->fetch_array(MYSQLI_ASSOC);
$subdominio = $row["name"];
$created_at = $row["created_at"];
?>

我该怎么做? 我在 Linux 的后台文件 PHP 有问题吗?性能、速度变慢等?

非常感谢!

您应该可以使用 Linux 中的 & 符号在后台启动任何程序:

php myscript.php &

要查看它是 运行,您使用:

jobs

它将列出作业的编号,以便您可以将其调回前台 interact/kill 它:

fg 1

F.Y.I 如果您的脚本打印任何您想要重定向输出的内容,或者它会转到控制台

  1. 创建 PHP 文件并将您的代码放在那里。 (例如myfile.php
  2. 安装“screen”:

Ubuntu & Debian: apt-get -y install screen

CentOS 和 Fedora:yum -y install screen

**** 按照步骤 3 & 4 一直执行 myfile.php。并按照步骤 5 和 6 使用 crontab 每 1 分钟或每 X 次执行 myfile.php。 ****

  1. 键入“screen”。
  2. 键入“php myfile.php”。 然后按 Ctrl + A + D minimize/hide。 然后输入“screen -r”返回。

  3. 键入“crontab -e”。

  4. 要每分钟执行一次,你可以输入'* * * * * php myfile.php'...如果你不想每分钟执行一次,Google关于crontab。