[求助]是否有办法使用 php 控制本地打印机打印文档?

2016-04-21 00:32:17 +08:00
 dettac

##情景描述

现在手头有一台电脑,连接着打印机,且驱动已经安装正确。 本地搭建了 php 的环境,有没有办法通过执行 php 文件来控制打印机打印本台电脑上的 PDF 文档?

##思路

使用 cmd 下命令

NET USE LPT2 \\{本机局域网 IP 地址}\{本机 php 程序路径}  
PRINT /d:LPT2 D:\test.pdf

成功打印

但是使用 php 的 exec()时错误提示“无法初始化 LPT2 ”。。。

请问各位有没有什么办法解决此问题,非常感谢!

3051 次点击
所在节点    PHP
8 条回复
konakona
2016-04-21 00:51:45 +08:00
JS 模拟 ctrl+p?
yangqi
2016-04-21 00:58:42 +08:00
把命令放到.bat 文件里,然后 php 运行外部文件就行了
dettac
2016-04-21 01:16:09 +08:00
@konakona 不行呀, ctrl+p 是打印当前页面,而我需要打印的东西在电脑硬盘中呢~
skydiver
2016-04-21 01:22:12 +08:00
如果你直接命令行执行也有问题那就是命令的问题。如果命令行可以 PHP 不行那就是 PHP 的权限问题。先缩小范围再仔细寻找问题点呗
dettac
2016-04-21 01:23:27 +08:00
@yangqi 谢谢大神!搞定!跪谢呀~~
Sunyanzi
2016-04-21 03:44:28 +08:00
顺带一提 ... php 有个叫 printer 的扩展是专门用来干这事儿的 ... 比用 exec 优雅点 ...

不过既然你已经实现了就当个额外的参考知识听吧 ...
dettac
2016-04-21 20:33:54 +08:00
@Sunyanzi 这个扩展好像资料不是很多呀,方便顺手给个地址吗
Sunyanzi
2016-04-22 22:12:23 +08:00

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/273246

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX