2014-12-17 3 views
0

Имея следующий PHP код, который производят HTML код: (упрощенная функция, реальная одна на той же идее, но уже с петлями и так далее):PHP, HTML и PDF с друпал

<?php 
function show_doc_html() { 
    $text_to_title = "some text from db"; 
    ?> 
    <html> 
     <head> 
      <title> 
       <?php echo $text_to_title ?> 
      </title> 
     </head> 
     <body> 

     </body> 
    </html> 
    <? 
} 

Я хотел бы чтобы вернуть PDF пользователю, не меняя слишком много этого кода. мы работаем под drupal, поэтому у нас есть функция, которая может получить html-строку и преобразовать ее в pdf, но прежняя функция не возвращает ничего, кроме печати на stdout. Это возможно? или мне нужно перестроить старую функцию для возврата строки?

ответ

0

Самый простой способ заключался в том, чтобы инкапсулировать мою функцию с помощью «ob_start()», чтобы получить весь текст, используя «ob_get_contents()», а затем преобразуйте его в PDF.
Что-то вроде:

function show_doc_pdf() { 
    ob_start(); 
    function show_doc_html() ; 
    $html_var = ob_get_contents(); 
    ob_end_clean(); 

    //use wkhtmltopdf api on $html_var to return pdf 
} 
1

that Что вам нужно? Я использовал его в своем проекте. Вы можете просто написать свою разметку и встроенный CSS в шаблоне узла, используя view_mode = 'PDF'

+0

Того, я проверю его завтра. –

Смежные вопросы