通过PHP应用程序通过网络打印

| 我有一组打印机通过网络连接,并且为每台打印机分配了静态IP。 现在,我在Linux服务器上运行了一个PHP Web应用程序,该服务器需要通过网络将打印作业发送到这些打印机。 使用lpr或杯子可能吗,我该怎么办。     
已邀请:
您可以从此处使用LPR打印机类: http://www.phpclasses.org/package/2540-PHP-Abstraction-for-printing-documents.html 例:
<?php 
include(\"PrintSend.php\");
include(\"PrintSendLPR.php\");

$lpr = new PrintSendLPR(); 
$lpr->setHost(\"10.0.0.17\"); //Put your printer IP here 
$lpr->setData(\"C:\\\\wampp2\\\\htdocs\\\\print\\\\test.txt\"); //Path to file, OR string to print. 

$lpr->printJob(\"someQueue\"); //If your printer has a built-in printserver, it might just accept anything as a queue name.
?>
    
这个问题已经被问过了。查看使用PHP打印到网络打印机 当时的答案是time1ѭ 但是,答案从未得到接受,因此不确定操作人员是否认为它有用。它看起来确实应该可以解决问题,但这并不是在PHP中直接直接实现的方法。 我发现的许多其他资源也建议采用这种方法。 深入研究,我发现PHP在PECL中有一个Printer模块。但是,它仅适用于Windows,并且维护得不好。但如果有帮助,请在此处链接:http://www.php.net/manual/zh/intro.printer.php 我认为最终的答案是PHP并不是真的为这种事情设计的,并且没有内置的功能来做到这一点。但是,由于您可以使用
exec()
和类似的命令来使用外部命令,因此尽管它不太理想,但使其工作起来并不难。     
试试PHP :: PRINT :: IPP 它对我来说非常有效。 基本用法
 <?php
  require_once(PrintIPP.php);

  $ipp = new PrintIPP();                        
  $ipp->setHost(\"localhost\");
  $ipp->setPrinterURI(\"/printers/epson\");
  $ipp->setData(\"./testfiles/test-utf8.txt\"); // Path to file.
  $ipp->printJob();                                                          
?>
参考     
我也在对此进行研究...我认为以下编写的代码可以帮助您在Linux中处理打印机
<?php
$printer = \"\\\\\\\\Pserver.php.net\\\\printername\");
if($ph = printer_open($printer))
{
   // Get file contents
   $fh = fopen(\"filename.ext\", \"rb\");
   $content = fread($fh, filesize(\"filename.ext\"));
   fclose($fh);

   // Set print mode to RAW and send PDF to printer
   printer_set_option($ph, PRINTER_MODE, \"RAW\");
   printer_write($ph, $content);
   printer_close($ph);
}
else \"Couldn\'t connect...\";
?>
    

要回复问题请先登录注册