I have a set of printers connect over a network with Static IP assigned to each printer.
Now i have a PHP web application running on a linux server which needs to send print jobs, to these printer over the network.
Is this possible using lpr or cups and how do i go about it.
i was also doing research on this...and i think the below written code can help you in handling printer in linux
You could use the LPR Printer class from here:
http://www.phpclasses.org/package/2540-PHP-Abstraction-for-printing-documents.html
Example:
Try PHP::PRINT::IPP
It worked perfectly for me.
Basic Usage
Reference
This question has been asked before. See print to a network printer using PHP
The answer given that time was
exec("lpr -P 'printer' -r 'filename.txt');
However, the answer was never accepted so not sure whether the OP found it helpful; it certainly looks like it ought to do the trick, but it's not quite a direct and easy method of doing it from within PHP.
A number of other resources I found were also recommending variations on this approach.
Digging a bit deeper, I see PHP has got a Printer module in PECL. However it's only for Windows, and looks like it's not well maintained. But in case it helps, the link it here: http://www.php.net/manual/en/intro.printer.php
I think the answer ultimately is that PHP isn't really designed for this kind of thing, and doesn't have built-in functionality to do it. But since you can shell out to external commands using
exec()
and similar, it shouldn't be too hard to get it working, albeit not quite ideal.