bugfix> php > 投稿

PHPを使用して印刷しようとしています。ローカルマシンでphpバージョン7.1.1 xampを使用しています。多くの答えや解決策を見てきましたが、うまくいきませんでした。一部のソリューションには、php_printer.dllのダウンロードとインストールが含まれていますが、それでも失敗します。 printer_list()、printer_open()を試しました。この作品の修道女。致命的なエラーが発生します:不明なエラー:未定義の関数printer_list()の呼び出しなど。

///////////////////////////example 1//////////////
//////////////////////////////////////////////////
$print_data = $_POST['zpl_data']; 
try
{
    $fp=pfsockopen("10.136.3.64",0001); //9100
    fputs($fp,'test');
    fclose($fp);
    echo 'Successfully Printed';
}
catch (Exception $e) 
{
    echo 'Caught exception: ',  $e->getMessage(), "\n";
}
 /////////////////example 2////////////////////////////
/////////////////////////////////////////////////////////
$handle = printer_open('\\\\192.168.2.206:9100\\'); 
printer_set_option($handle, PRINTER_MODE, "RAW");
printer_write($handle, "TEXT To print"); 
printer_close($handle);
$printer_name = "Your Printer Name exactly as it is"; 
$handle = printer_open($printer_name);
printer_start_doc($handle, "My Document");
printer_start_page($handle);
$font = printer_create_font("Arial", 100, 100, 400, false, false, false, 0);
printer_select_font($handle, $font);
printer_draw_text($handle, 'This sentence should be printed.', 100, 400);
printer_delete_font($font);
printer_end_page($handle);
printer_end_doc($handle);
printer_close($handle);
///////////example 3 ///////////////////////////
///////////////////////////////////////////////
 var_dump(printer_list(PRINTER_ENUM_LOCAL | PRINTER_ENUM_SHARED));

回答 1 件
  • プリンターPECLパッケージがインストールされていないためです。

    http://php.net/manual/fa/printer.installation.php https://pecl.php.net/package/printer

    また、これはWindowsでのみ機能することにも注意してください。

    ちなみに私はそれを使用しません。 http://www.columbia.edu/~em36/pdftoprinter.htmlのようなコマンドラインコマンドを使用してPDFを作成し、印刷します。

    私見の方が簡単で、ネットワークプリンターでも動作します。

あなたの答え