안녕하세요, 저는 dinamically 생성 된 (PHP로) html 코드를 변수에 저장하고 Ajax 요청에 대한 회신으로 보낼 수 있습니다.PHP 변수에 html 페이지 저장
$error='none';
$result = array('teh_html' => $html, 'error' => $error);
$result_json = json_encode($result);
echo $result_json;
내가 할 수있는 :
<?php
$c=count($services);
?>
<table>
<?php
for($i=0; $i<$c; $i++){
echo "<tr>";
echo "<td>".$services_global[$i][service] ."</td>";
echo "<td>".$services_global[$i][amount]."</td>";
echo "<td>€ ".$services_global[$i][unit_price].",00</td>";
echo "<td>€ ".$services_global[$i][service_price].",00</td>";
echo "<td>".$services_global[$i][service_vat].",00%</td>";
echo "</tr>";
}
?>
</table>
내가 모든 생성 된 HTML 코드 (나머지)를 저장하고 같은 JSON 인코딩 변수로 에코해야합니다 의 내가 무작위로 같은 테이블을 생성 해 봅시다 어쩌면 html 파일을 생성하고 그것을 읽어
ob_start();
//all my php generation code and stuff
file_put_contents('./tmp/invoice.html', ob_get_contents());
$html = file_get_contents('./tmp/invoice.html');
그러나 그것은 단지 틀린 소리 난 정말에만 코드를 생성하지만 필요가 없습니다 때문에 대표로 내 메인 페이지로 전송 아약스 요청에 대해서는 자원 낭비 일뿐입니다. 제안 사항이 있으십니까? 데이터가 내가 제안 후 다시 생성 훨씬 비싼 경우, 당신은 단지 적절한 출력 버퍼링 기능을
// turn output buffering on
ob_start();
// normal output
echo "<h1>hello world!</h1>";
// store buffer to variable and turn output buffering offer
$html = ob_get_clean();
// recall the buffered content
echo $html; //=> <h1>hello world!</h1>
내 제안 : "구체적인 문구를 문안하십시오"... – rdlowrey
나는 코드에서 곧바로 html을 생성하지 않을 것을 제안합니다. 어떤 종류의 템플릿 엔진을 사용하는 것이 더 낫습니다. (단지 PHP도 포함됩니다). 내가 좋아하는 것은 Twig (http://twig.sensiolabs.org/) – petraszd