可用的打印机以选择框,lpstat,控制台,apache,php,html


1

我在运行基于Web的POS系统的局域网(无头Mac-Mini)中有一个Web服务器。我想为商店的普通员工提供一种可能性,以将热敏票据打印机从收银员1手动切换到收银员2,以防缺纸或其他打印问题,结果客户可以离开商店带有收据,而无需等待纸卷更改(最多5个月)或网络管理员到达(最多5个小时):-)当前解决方案是一个选择框,其生成方式如下(为便于更好地理解而进行了简化) :

<?php

$printers = exec("lpstat -a | cut -f1 -d ' ' >printer.txt");
$p = file('printer.txt');

$tmp = '<select name="printer" autocomplete="off">';
$tmp .= '<option> --- select printer --- </option>';
foreach($p AS $printer) $tmp .= '<option value="' . $printer . '">' . $printer . '</option>';
$tmp .= '</select>';

echo $tmp;

?>

我的问题是,如何能抓住列出的打印机并构建选择框,而又不绕开编写由php读取的文件的弯路。我的意思是,仅在一行中直接使用控制台输出(通过exec),例如,通过添加分隔符,例如; 结果可以在这样的变量中使用(将不起作用,只是为了说明):

<?php

$printers = exec("lpstat -a | cut -f1 -d ' ' **another option to add the delimiter**");
$p_ary = explode(';', $printers);

... build the selectbox ...

?>

该变量$printers应看起来像Epson_1;Epson_2;Epson_1_cashier2...,它必须由exec一行提供。

感谢您的想法。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.