直接从php打印

时间:2016-11-04 09:04:20

标签: php html

我有直接从php打印的问题,我不想使用CreatedAt,因为这取决于浏览器。所以我正在使用它:

window.print

我已经添加了php_printer.dll扩展,但我收到了以下错误:

<!DOCTYPE html>
<html>
<body>
<textarea rows="5" cols="50">
<?php
$myfile = fopen("test.txt", "w") or die("Unable to open file!");
$txt = "John Doe\n";
fwrite($myfile, $txt);
$txt = "Jane Doe\n";
fwrite($myfile, $txt);
fclose($myfile);
$file = file_get_contents('./test.txt', FILE_USE_INCLUDE_PATH);
echo $file;
$printer = printer_open("Adobe PDF");
if($ph = printer_open($printer)) 
    {
   // Get file contents
   $fh = fopen("test.txt", "rb");
   $content = fread($fh, filesize("test.txt"));
   fclose($fh);

   // Set print mode to RAW and send PDF to printer
   printer_set_option($ph, PRINTER_MODE, "RAW");
   printer_write($ph, $content);
   printer_close($ph);
}
else "Couldn't connect...";
?>
?>
</textarea>

</body>
</html>

这有什么问题?谢谢。

2 个答案:

答案 0 :(得分:1)

此代码。

$printer = printer_open("Adobe PDF");

更改为

$printer = "Adobe PDF";

答案 1 :(得分:0)

由于我无法发表评论,我在此处写道:我认为您不能在客户端和服务器之间进行适当划分。 JavaScript在客户端的浏览器中运行,这使得用户可以在自己的打印机上打印文档。但PHP完全是服务器端的。因此,这意味着使用打印机功能,您只能在连接到服务器的设备上打印。我不认为这就是你想要的。

所有重要的浏览器都支持

window.print(),所以我没有看到您无法使用它的原因。