2012-06-29 3 views
1

좋아,PHP는 출력을 포함하지 않습니까?

것은 괴롭 히다. 나는 jquery와 css로 jasezing하는 과정에 현재있는 (지불 된) 장바구니를 가지고 있으며, 그 외의 모든 것을보고 현재보다 훨씬 더 멋지게 만들 수 있습니다.

어쨌든. 데이터베이스와 기능을 사용하려면 웹 페이지 시작 부분에 파일을 포함시켜야합니다. 나는 그것을 넣었습니다

<div style="display:none;"> 

물론 출력물은 여전히 ​​브라우저에 기록됩니다. 그다지 많지는 않지만 div 나 NO 출력을 선호하지는 않지만 여전히 계산을 수행하기를 원합니다. 자사의 5000 라인 PHP 파일과 너무 복잡하고 내가 원하지 않는 비트를 편집 복잡.

거기에 영리한 방법이 있습니다. 파일을 포함시킬 수는 있지만 포함시킬 때 페이지에 쓰여지려면 무엇이 필요합니까?

나는 그것이 교묘 한 것임을 알고 있으며, 누군가가 나를 알려 주시기 바랍니다.

감사합니다.

+1

출력 버퍼링? –

+0

5 천 라인 PHP 스크립트를 지불했습니다. 제작자가 요청하지 않으면 아무 것도 출력하지 못하게 할 수 있습니까? – CodeCaster

+0

이 쇼핑 응용 프로그램은 회사에 가입하기 전에 구입했습니다. 그것은 완전히 새로운 쇼핑 및 데이터베이스 관리 시스템을 작성하지 못하게하므로 사용하게되어 기쁩니다. 나는 그들에게 묻기를 생각했지만 기술적으로 나는 그들의 스크립트를 올바른 방법으로 사용하지 않고있다. 나는 그들이 단지 부정이라고 말할 것이라고 생각한다. – Chud37

답변

9

당신은 브라우저로 보내는 대신 변수에 출력을 잡으려고 output buffering를 사용할 수 있습니다

ob_start(); 
require(...); 
$data = ob_get_clean(); 

require 대신 include의 사용을. 그 이유는 내가 개인적으로 스크립트가 포함 오류를 일으킬 때 충돌해야한다고 생각하기 때문이며, 아무 것도 잘못된 것처럼 계속 진행하지 않아야하기 때문입니다.

+0

나는 그것을 줄거야! – Chud37

+0

감사합니다. 이전에는이 ​​기능을 사용하지 않았습니다. PHP는 모든 것을 생각했습니다! – Chud37

0

ob_start()ob_end_clean()을 확인하십시오. 그것들은 출력물을 포착하여 문제를 해결할 수있는 덤프를 허용합니다. 또한 실제로 수행해야 할 작업 인 소프트웨어의 출력되지 않는 버전을 만드는 방법에 대해 공급 업체와상의하고 싶을 수도 있습니다 (나는 코러스에 설교하는 것을 알고 있습니다).

지금까지 ob-end-clean을 사용할 올바른 이유를 결코 알지 못했습니다. :-)

+0

아니요. 솔직히 말해서 이전에 그 기능을 보지 못했습니다. 굉장히 유용하다. – Chud37

관련 문제