PHP服务器端打印Ubuntu服务器

发布时间:2022-04-30 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了PHP服务器端打印Ubuntu服务器脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
@H_502_2@
我一直在堆栈,看着做这件事需要做些什么,并且有点困惑.

让我们直截了当这是一个基于本地的内部网,我知道PHP服务器端.

我在基于Web的PHP,JAVA,jquery Idea上运行公司管理解决方案.我们想直接从“LINUX”服务器和收据等打印报告.

我已经在服务器上安装了杯子,服务器打印正常,我现在只是坚持认为是否真的可以让服务器打印我们直接从PHP代码生成的pDF文件.

使我们有一个bash脚本运行并检查目录打印pdf然后将其删除,我也会很高兴,即使我暂时将其视为一种解决方法.

就像我说的那样,我确实理解如果这是在WWW上完成的话那么就会有一些可以使用的漏洞.如果我在www上运行这个系统,我会有一个完全不同的网站,不允许打印,这个功能是没有必要的.

先感谢您

亚历克斯

解决方法

如果CUPS配置正确,从shell打印PDF就像这样简单

lPR myfile.pdf

因此,一旦将PDF写入临时文件,就可以使用任何可用的PHP函数来执行该shell命令:exec(),shell_exec(),system()

您甚至可以在不编写临时文件的情况下执行此操作,并通过STDIN将数据直接提供给lpr(尝试cat myfile.pdf | lpr作为shell上的示例).

如果使用proc_open()运行数据,则可以使用PHP将数据提供给程序的STDIN. PHP Manual的第一个例子可以适用于这样的事情:

<?PHP
$descriptorsPEc = array(
   0 => array("pipe","r"),// stdin is a pipe that the child will read From
);

$process = proc_open('lpr',$descriptorspec,$pipes);

if (is_resource($process)) {
    // $pipes Now looks like this:
    // 0 => wrITeable handle connected to child stdin
    // 1 => readable handle connected to child stdout
    // Any error output will be appended to /tmp/error-output.txt

    fwrite($pipes[0],$pdf_data);
    fclose($pipes[0]);
}
?>
@H_502_2@

脚本宝典总结

以上是脚本宝典为你收集整理的PHP服务器端打印Ubuntu服务器全部内容,希望文章能够帮你解决PHP服务器端打印Ubuntu服务器所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。