2014-01-23 4 views
0

스크립트 작업을 시도하고 있지만 한 곳에서 멈추었습니다.파일에서 백 슬래시를 이스케이프하는 방법

예 :

<?php 
echo "Hello World!"; 
?> 

그래서 내 PHP 코드가 실행되고 ....

str_php = """ 
<?php 
echo "Hello World!"; 
?>""" 

php_file = open("index.php", "w") 
php_file.write(str_php) 
php_file.close() 

좋아, 내가 사용하고있는 PHP 출력을 ..받을, 그래서 그대로 내가 출력을 얻을합니다. 여기까지는 모두 좋다. 그러나, 문제는 내가

str_php = """ 
<?php 
echo "Hello World!"; \n echo "How are you"; \n echo "God bless you"; 
?>""" 

php_file = open("index.php", "w") 
php_file.write(str_php) 
php_file.close() 

"\""\n""\r"을 사용하려고 할 때부터 시작하지만, 여기에 나는 그대로 출력을 얻을니까.

<?php 
echo "Hello World!"; 
echo "How are you"; 
echo "God bless you"; 
?> 

출력에서 ​​"\"그냥 사라집니다. 예 : 나는 PHP는 하이퍼 링크 같은 뭔가의 출력 ...

str_php = """<?php 
print("<a href=\"$dirArray[$index]\">$dirArray[$index]</a>"); 
?>""" 

php_file = open("index.php", "w") 
php_file.write(str_php) 
php_file.close() 

내가 얻을 출력입니다 ...

<?php 
print("<a href="$dirArray[$index]">$dirArray[$index]</a>"); 
?> 

은 "\"가 실종되고 PHP 오류를 만들어 실행되지 않습니다 싶어 .

print("<a href=\"$dirArray[$index]\">$dirArray[$index]</a>") - Original 
print("<a href="$dirArray[$index]">$dirArray[$index]</a>") - python output 

"\", "\ n", "\ r"을 도와 줄 수 있습니까 ??

+1

앞에서'r'을 사용하여 문자열을 선언 해 보았습니까? 'r '' '여기에 문자열을 쓰십시오.' '' ' –

답변

3

"\"를 사용하여 "\"문자를 이스케이프 처리하십시오.

은 여러 가지 "\"를 포함하는 긴 문자열을 갖고 싶어하는 것이 일반적이기 때문에

는, 파이썬은 하나 따옴표를 열어 문자열을 접두사로 허용하는 경우 r AR ("원시"에 대한) - 문자열 등의 내부, 아니 탈출 CHR (10)에 "\ n"또는 "\의 t는"CHR하기 (9) 발생 :

당신은 "\\"로을 writting 다른 백 슬래시로 "\"를 탈출 할 필요가
>>> print (r"Hello \n world!") 
Hello \n world! 
-1

"\n"을 사용하면 구문 분석되어 줄 바꿈이 적용됩니다. '\n'을 사용하려고하면 '\n'으로 묶인 문자열은 구문 분석되지 않으므로 원하는대로 인쇄해야합니다.

+0

문제는 PHP 코드가 아닌 파이썬 코드에 있습니다. 파이썬은 작은 따옴표와 큰 따옴표를 다르게 처리하지 않습니다. 단, 따옴표 안에서 같은 종류의 따옴표를 이스케이프해야합니다. – geoffspear

+0

오케이. 파이썬을 사용하여 PHP를 만들고 PHP를 사용하지 않는 이유는 무엇입니까? ;) – Ben

+0

사실 꽤 좋은 질문입니다. :) – geoffspear

관련 문제