2014-09-30 50 views
2

其實我想用下面的代碼示例打印內容。如何在PHP中使用與window.print()相同的打印機打印頁面作品

$ html有我想要打印的所有HTML,但不在瀏覽器中顯示視圖,也不在瀏覽器中顯示/顯示。

我試圖找到一種與window.print();相同的方法。但在PHP中需要。我不想在瀏覽器中顯示所有的HTML。

有什麼方法或招數? 任何建議可以幫助我很多。 謝謝。

我的示例代碼:

$arr = array('one','two','three','four','five'); 
$html = "<div style='background:red;color:black;'>"; 
foreach($arr as $value){ 
    $html .= $value.'<br />'; 
} 
$html .= "</div>"; 

// print code to print $html content as same as JS window.print() works. 
+3

由於PHP是一個服務器端應用程序,我不認爲它可以打印照片,無需Javascript功能來幫助它。 – Rasclatt 2014-09-30 06:55:24

回答

18
<script type="text/javascript">  
    function PrintDiv() {  
     var divToPrint = document.getElementById('divToPrint'); 
     var popupWin = window.open('', '_blank', 'width=300,height=300'); 
     popupWin.document.open(); 
     popupWin.document.write('<html><body onload="window.print()">' + divToPrint.innerHTML + '</html>'); 
     popupWin.document.close(); 
      } 
</script> 




<div id="divToPrint" style="display:none;"> 
    <div style="width:200px;height:300px;background-color:teal;"> 
      <?php echo $html; ?>  
    </div> 
</div> 
<div> 
    <input type="button" value="print" onclick="PrintDiv();" /> 
</div> 
+2

這是一個很棒的解決方案。這對我幫助很大。 – 2015-08-12 08:43:26