ОШИБКА ПРИНТЕРА PHP
Добрый день всем, пожалуйста, помогите мне решить этот код. Я хочу напечатать все значение массива на принтере php, но отображается только 1. Я использую фреймворк php codeigniter 3. Заранее спасибо.
введите описание изображения здесь Результат: Кол-во Описание 1 Продукт Один
$content = "Customer " . $this->uri->segment(2) . "\n";
foreach ($orders as $order) {
$content = "Qty Description\r" . $order->Quan . " " .
" " . " " . $order->Description . "\r";
}
$printer = ("EPSON TM-U220 Receipt");
$handler = printer_open($printer);
if($handler) {
}
else {
echo "not connected";
}
printer_write($handler, $content);
printer_close($handler);
2 ответа
Решение
Вы хотите объединить $content
.
+ Изменить
foreach($orders as $order) {
$content = ....
}
к
foreach($orders as $order) {
$content .= .... // here-> .=
}
Вы перезаписываете значение $content
до foreach()
цикл заканчивается, поэтому пока отображается только последнее значение, присвоенное $content внутри foreach()
петля.
В основном вы можете сделать две вещи.
1. Назначьте значения в массив.
foreach($orders as $order) {
$content[] = "Qty Description\r" . $order->Quan . " " . " " . " " . $order->Description . "\r";
}
С помощью этого метода все значения, которые вы получаете из цикла, будут сохранены внутри массива.
2. объединить значения в $content
foreach($orders as $order) {
$content .= "Qty Description\r" . $order->Quan . " " . " " . " " . $order->Description . "\r";
}
Я надеюсь, что это поможет вам.