2010-12-02 5 views
4

Ich schreibe gerade ein System in PHP, das eine Schnittstelle mit einem USB-Thermo-Belegdrucker für einen Freund bei der Formularübergabe benötigt. Zur Zeit habe ich über Schnittstellen mit Geräten mit einem parallelen Port gelesen, aber es gibt nicht viele Details darüber, wie ich PHP für die Verbindung mit einem USB-Thermo-Belegdrucker verwenden kann.Schnittstelle zum USB-Belegdrucker in einem Point-of-Sale-System mit PHP

Bisher habe ich den Beleg, der aus Daten besteht, die aus dem Formular gebucht wurden, entworfen. Der nächste Schritt wäre, es auf dem Thermodrucker zu reproduzieren.

<?php 
$handle = fopen("PRN", "w"); // note 1 
fwrite($handle, 'text to printer'); // note 2 
fclose($handle); // note 3 
?> 

Dies ist, was ich auf http://www.kksou.com/php-gtk2/Recipes/0399.php

  1. Stellen Sie die Verbindung mit dem Quittungsdrucker durch PRN gefunden.

  2. Schreibt über das Dateihandle auf den Belegdrucker.

  3. Den Drucker trennen.

Es ist eher vage? Irgendeine Idee, wie es funktioniert?

+0

Welche Plattform wird das sein, Windows? – Orbling

+0

ja Windows wäre die Plattform, die es auf – methuselah

+0

laufen wird Theoretisch sollten alle USB-Geräte in genau der gleichen Weise zugänglich sein. Sie sollten nur die Liste der angeschlossenen USB-Geräte durchlaufen, bis Sie die richtige gefunden haben. Es sollte nicht einmal Treiber benötigen, wenn Sie direkt darauf zugreifen möchten. Oder alternativ können Sie darauf wie jeder Drucker zugreifen, der auch funktionieren sollte. Natürlich sind das große Wünsche. Die meisten POS-Unternehmen haben keine Ahnung, wie Hardware richtig funktionieren kann. :( – DampeS8N

Antwort

3

Nun, wenn Sie PHP auf einer Win32-Plattform verwenden, gibt es die Printers PECL module, die installiert werden kann. Sie können den Drucker also mit der vorhandenen Treiberkonfiguration verwenden.

Abhängig vom verwendeten Drucker kann es möglich sein, sie direkt zu verwenden, wenn Sie die Befehlssprache EPL/ZPL/etc. Wissen, den Drucker in den Raw-Modus zu versetzen und die Befehle zu posten.

Alternative:

können Sie den USB-Zugriff auf dem Bus von PHP direkt, wenn Sie Setup die USB als eine serielle Schnittstelle und dann die Direct IO Functionsdio Bibliothek verwenden. Denken Sie daran, serielle Optionen mit dem Befehl mode vor dem Start einzustellen.

Verwandte Themen