【在后台运行php脚本而不卷曲】教程文章相关的互联网学习教程文章

PHP:exec()即使使用“> / dev / null 2>&1&”也不会在后台运行【代码】

我在我的php脚本中调用它:exec("gutschein.php >/dev/null 2>&1 &");调用脚本(生成pdf并通过电子邮件发送)可以正常工作,但是进程没有在后台运行(我使用gutschein.php中的sleep语句检查了它).浏览器一直挂起,直到执行gutschein.php完成. 我还检查了以下内容:exec("/usr/bin/php gutschein.php >/dev/null 2>&1 &");要么shell_exec("/usr/bin/php gutschein.php >/dev/null 2>&1 &");它没有改变任何东西.该脚本实际上是在linux服务...

php – 从Perl在后台运行作业,无需等待返回【代码】

免责声明 首先,我知道这个问题(或密切的变化)已被问过一千次.我真的花了几个小时看着明显的和不那么明显的地方,但可能有一些我想念的小事. 上下文 让我更清楚地定义问题:我正在编写一个新闻通讯应用程序,我希望实际的发送过程是异步的.在用户单击“发送”时,请求立即返回,然后他们可以检查特定页面中的进度(例如,通过AJAX).它是用传统的LAMP堆栈编写的. 在我正在使用的特定主机中,出于安全原因禁用了PHP的exec()和system(),但Perl...

如何在主线程分开的后台运行php函数?【代码】

所以我有一个主要的PHP线程,我想在其中调用一个函数,使其在后台运行并且不会让用户等待,因为这个函数需要很长时间才能执行.$logFile = 'app-output.txt'; $command = 'nohup /export/php -r "require \'/export/wiki.php\';update_wiki(1);" &'; $command.= ' > "'.$logFile.'" 2>&1'; exec($command);所以我尝试使用exec函数,但由于某种原因它不会在后台运行.wiki.php是一个具有update_wiki功能的文件需要很长时间,所以我想将用户...

在后台运行php脚本而不卷曲

我在后台运行PHP脚本有点麻烦. 我的管理区域有访问HTTP身份验证和邮件输出脚本,我想在后台运行.这个脚本需要很长时间才能执行,所以我希望它在后台执行. 我的想法是当我访问“发送”页面时,它在后台执行发送脚本并将用户重定向到其他地方. 但是,当前尝试使用cURL时,我无法进入发送脚本,因为它返回所需的授权. 任何建议表示赞赏,谢谢.解决方法:>创建一些作业队列(数据库/文件/直接写入某个套接字).>创建消耗这些作业的deamon(套接字)...

php – WordPress Cron API在后台运行吗?【代码】

我正在读取wp-includes中的cron.php代码,而spawn_cron()似乎是实际执行已注册任务的代码. 函数的最后两行:$cron_url = site_url( 'wp-cron.php?doing_wp_cron=' . $doing_wp_cron );wp_remote_post( $cron_url, array( 'timeout' => 0.01, 'blocking' => false, 'sslverify' => apply_filters( 'https_local_ssl_verify', true ) ) );它只是打开wp-cron.php,将任务作为查询参数传递. cron.php顶部的API描述:* Schedules a hook w...

php脚本使用系统命令并在后台运行 – 它仍会按顺序运行吗?【代码】

我有以下脚本update_pos_databases.php(简化版)<?php ini_set('display_errors', 1); set_time_limit(0); $db_host = 'localhost'; $db_user = 'root'; $db_password = 'PASSWORD';$databases = array('example');$db_host = escapeshellarg($db_host); $db_user = escapeshellarg($db_user); $db_password = escapeshellarg($db_password);foreach($databases as $database) {echo "Running queries on $database\n**************...

PHP脚本不会在后台运行【代码】

我试图在后台运行一个php CLI脚本,它只是不会运行 – 它的状态为Stopped SIGTOU(试图写输出) – 这是详细信息 > Mac OS X Lion 10.7.2> PHP 5.3.6与Suhosin-Patch(cli)(内置:2011年9月8日19:34:00) 我创建了一个基本脚本test.php<?php echo 'Hello world'.PHP_EOL; ?>以下是各种测试的结果: – > php -f test.php(Hello world显示)> php -f test.php> test.log 2>& 1(Hello world进入test.log)> php -f test.php> test.log 2>& ...

即使从a / c注销,在提交表单后php脚本如何在后台运行

我正在做一个群发邮件项目.一切都很顺利,但问题是我有一个表格.提交后,我正在从数据库中检索大量电子邮件ID(大约3000封电子邮件).我为每封电子邮件提供了3秒的间隔(使用sleep()方法).大约需要9000秒.在PHP脚本执行完成之前,用户不希望被困在同一页面中. 即使在widows平台上注销后,如何在后台运行php脚本?如果用户再次登录,则应显示一个进度条.没有使用Cron工作有可能吗? 我需要一个解决方案.任何人都可以帮我解决这个问题吗?解决...

Ajax – 在后台运行PHP脚本进行通信?

我怀疑这个问题看起来太……愚蠢,但是我试图找到一个很好的解决方案而且我有点卡住了. 所以,这是我的情况: >我正在使用Ajax执行一系列任务.实际上,我正在排队(或者有时平行,对我来说并不重要)一个或多个请求.>以百分比显示进度(执行X任务中的1个)>完成后,显示最终结果. 我正在尝试做什么: >而不是运行3-4个不同的任务(= 3-4个不同的PHP脚本通过Ajax异步调用),我想只有1个(= 1个脚本) – 换句话说,将X脚本合并为一个. (这很简单)....

php – 在后台运行异步作业(laravel)

我知道Laravel的队列驱动程序,例如redis和beanstalkd,我读到你可以增加beanstalkd等工作者的数量.但是我不确定这些解决方案是否适合我的方案.这就是我需要的; 我通过套接字连接监听XML提要,数据不断快速传播.永远.我在一秒钟内得到了数十个XML文档. 我逐行读取来自这个套接字的数据,一旦我到达XML结束标记,我就将缓冲区发送到另一个要解析的进程.我曾经只是在base64中对xml进行编码,并为每个xml运行一个单独的php进程. shell_exec(...

如何编写异步Web服务在后台运行php

即时编写后台处理Web服务使用PHP需要在后台运行即使用户关闭浏览器有没有办法使用PHP做到这一点? 更多信息 是的我正在使用symfony / php处理大型网络项目(付费滚动).当工资单用户到达时,它需要在每个月处理,然后单击流程按钮.那么工资单应该在没有apache服务器超时的情况下处理.为此,我希望能够在后台运行异步Web服务.解决方法:正如评论家所说,你应该使用CRON job,因为它最适合这类问题.但是,您需要通过单击用户来启动作业.这是我...

php – 我应该使用“|在现在“或&符号(&)在后台运行脚本?【代码】

我一直在寻找关于在后台运行php脚本的答案,它们似乎以两种方式传播. 有些人建议使用这个(或类似的东西):/usr/bin/php command >/dev/null 2>&1 &其他建议使用“at”命令:echo '/usr/bin/php command'| at now关于两种方法的主要区别是什么?优缺点都有什么? 我想要做的是当用户提交表单时,我需要运行几分钟长的脚本,显然应该在后台运行.我已经尝试了两种方式,他们都为我工作,但我不知道该选哪个.解决方法:at命令是一个调度程序,...

php – shell_exec没有在后台运行?【代码】

我有以下执行完美但不在后台应该执行?它实际上会停止页面加载,直到它完成,这是不好的.shell_exec("/usr/bin/php /home/public_html/pages/test/backg.php {$user_info} {$user_info2} {$user_info3} &");我也试过了exec("/usr/bin/php /home/public_html/pages/test/backg.php {$user_info} {$user_info2} {$user_info3} &");我以为&意味着它会执行然后让持有页面继续吗?解决方法: exec(sprintf("%s > %s 2>&1 & echo $! >> %s",...

php shell exec wget不在后台运行【代码】

我想按如下方式运行wgetshell_exec('wget "'http://somedomain.com/somefile.mp4'"'); sleep(20); continue my code...我想要的是让PHP等待shell_exec wget文件下载完成后再继续使用其余的代码.我不想等待一定的秒数. 我该怎么做,因为当我运行shell_exec wget时,该文件将开始下载并在后台运行,PHP将继续.解决方法:您的网址是否包含&字符?如果是这样,你的wget可能会进入后台,而shell_exec()可能会立即返回. 例如,如果$url是“http:...