필자가 시도한 것은 (실제로 로컬 테스트 서버에서만 가능합니다) PHP로 php 파일을 출력하는 것입니다 .
문제는 PHP의 시작 및 종료 태그 인 것 같습니다.
나는 php.net에서 nowdoc을 찾았지만 해결책에 대한 단서를 찾을 수 없었다. 나는 이런 식으로 사용하는 경우 : 여는 PHP 태그가 발견되는 경우파일에 출력 할 때 "<? php"와 "?>"를 이스케이프 처리합니다. - nowdoc/heredoc
Parse error: syntax error, unexpected T_SL in /home/ua000154/public_html/test.php on line XX
이 구문 분석 오류의 LINENUMBER은 항상 :
$fh = fopen($filenameandpath, 'w') or die("can't open file");
$stringData = <<<'WWR'
<?php
echo('test');
?>
WWR;
$suc = fwrite($fh, $stringData);
fclose($fh);
나는 구문 분석 오류가 발생합니다. 내 문제는 내가이 태그를 벗어날 필요가있는 것 같다 (나는 닫는 태그와 동일하게해야한다고 생각한다).
나는 어떻게 할 수 있습니까? 이것은 실제로 내 테스트 서버에서 작동하지만 일단 다른 서버의 최종 위치에 업로드하지 않습니다.
도움이 필요합니다. 시간 내 주셔서 감사합니다!
완전한 파일입니까?이 파일의 시작 부분에 php를 추가 했습니까? – shankhan
나는 그것이 지원되지 않는 엣지 케이스라고 의심했을 것이다. 그러나 당신의 예제는 나를 위해 잘 작동한다. 서버가 PHP> 5.3을 실행하고 있습니까? – mario
@shankman, 그렇습니다. 시작 및 종료 태그 인 @mario가있는 전체 파일입니다. 원격 서버가 5.2.17을 실행하고 있고, NOWDOC을 지원하지 않습니다. 출력으로 정확한 문자열이 필요했기 때문에 nowdoc을 사용했습니다. 이제 문자열의 모든 변수를 이스케이프 처리하는 방법을 찾아야합니다. 당신이 나를 도울 수? – leugim