从这个链接(Printing to POS printer from PHP)我开始使用php示例代码。我的问题是我的打印机设置为默认然后我必须连接到打印机。无论如何,我在连接打印机时遇到错误。 由于我的打印机名称在图1中,并且要访问打印机,我必须在运行中键入\ Sah-it \ ARP-808K,如图2所示。 我试过了:
1
$connector = new FilePrintConnector("\\Sah-it\ARP-808K");
$printer = new Printer($connector);
2
$profile = CapabilityProfile::load("simple");
$connector = new WindowsPrintConnector("smb://Sah-it/ARP-808Kr");
$printer = new Printer($connector, $profile);
3
$connector = new NetworkPrintConnector("\\Sah-it\ARP-808K");
$printer = new Printer($connector);
都给了我连接错误。请帮我连接打印机。感谢
FIG1:
Fig2:
答案 0 :(得分:0)
我个人没有使用ESC/POS Print Driver for PHP库,但文档确实以相当详细的方式说明了用法。根据您的图像判断,您有一台名为\\Sah-it\ARP-808K
的服务器共享的打印机。要连接(猜测打印机是Epson),建议您执行以下操作:
use Mike42\Escpos\PrintConnectors\WindowsPrintConnector;
use Mike42\Escpos\CapabilityProfile;
$profile = CapabilityProfile::load("simple");
$connector = new WindowsPrintConnector("smb://Sah-it/ARP-808K");
$printer = new Printer($connector, $profile);
注意:适用于Epson TM系列打印机,请检查documentation以确保您的打印机受支持
如果您通过主机名遇到上述问题,请检查您的PHP服务器DNS配置,因为它可能无法解析Sah-it
。在这种情况下,我建议尝试通过IP连接到打印机(如果联网)或使用以下内容连接到打印服务器的IP:
use Mike42\Escpos\PrintConnectors\NetworkPrintConnector;
use Mike42\Escpos\Printer;
$connector = new NetworkPrintConnector("10.x.x.x", 9100); //Printer/Server IP
$printer = new Printer($connector);
try {
// ... Print stuff
} finally {
$printer -> close();
}
如果您还有其他问题,请添加您的打印机品牌和型号,确认您的网络服务器可以解决\\Sah-it
并添加任何可能有用的相关错误。