난 혼란스러운 문제를 해결하는 데 필요한 정확한 코드로 PHP 스크립트를 줄였습니다 (적어도 나에게!). 아래의 모든 스크립트는 rtf 템플릿의 '++ name'을 한 줄에 'me'를 인쇄하고 다음 줄에는 'you'를 인쇄하는 하드 코드 된 변수로 대체합니다. "\ r \ n"을 사용하여 새 행을 만드는 것 외에도 "\ par"을 사용하지 않으려 고 시도했습니다. 아래 코드는 한 줄에 '++ name'을 "meyou"로 대체합니다. 나는 stackoverflow 및 기타 포럼에서 "솔루션"의 숫자를 발견했지만 아무도 나를 위해 일한 적이 없다.PHP 코드가 rtf 템플릿에 새 라인을 만들지 않습니다.
도움을 주시면 감사하겠습니다.
<?php
$name = "me" . "\r\n" . "you";
header('Content-type: application/msword');
header('Content-Disposition: inline, filename=filenot.rtf');
$filename = 'rtfnotice.rtf';
$fp = fopen ($filename, 'r');
$output = fread($fp, filesize($filename));
fclose ($fp);
$output = str_replace('++name', $name, $output);
echo $output;
?>
MIME 타입이'application/msword'이므로 일반 운영 체제 개행 문자가 당신을 위해 아무 것도하지 않을 것이라고 생각합니다. 캐럿 -P'^ p'를 사용해 보셨습니까? MS Word가 캐리지 리턴 (여전히있을 수 있음)을 위해 사용되는 것을 알고 있고 그것이 당신이 찾고있는 것일 수 있습니다. 나는 이것을 대답으로 올리 겠지만, 그것이 효과가 있다고 약속 할 수는 없다. 시도 할만한 것. – rdlowrey
응답 모든 사람에게 PHP_EOL'에게' http://stackoverflow.com/questions/128560/when-do-i-use-the-php-constant-php-eol – Richard