2017-10-10 7 views
-1

다음 스크립트는 내 localhost에서 아무런 문제없이 실행됩니다. 프론트 엔드에 테이블을 작성하기 위해 AJAX를 사용하여 요청하는 json 파일을 작성합니다. 그러나, 내가 아파치 2와 PHP 5.5 (json 모듈이 설치되어있다)를 실행하는 나의 우분투 VM에 넣을 때 json 파일을 생성하지 않는다. 결과는 내 테이블이 비어있는 것이다.우분투 서버에서 PHP 코드가 실행되지 않습니다.

<?php 
$arr = scandir('.\lehre\test'); 
foreach($arr as $k=>$v){ 
    if($arr[$k] == "." || $arr[$k] == ".."){ 
     unset($arr[$k]); 
    } 
    $fp = fopen('files.json', 'w'); 
    fwrite($fp, json_encode($arr)); 
    fclose($fp); 
} 
?> 

추 신 : include PHP와 같은 기타 PHP 요소. EDIT : 오류 메시지가 표시되지 않습니다. 다른 경로 선언 내에서 슬래시 표기법을 사용합니다.

+1

시도는 무엇의 대신에 /이''\\ '하지 않는 것 – teeyo

+1

사용'대신 ** antislashes **의 ** ** 슬래시 사용 –

+0

Linux 시스템이 그것을 해결하기 위해 :( – RubyOnRails

답변

1

개발 환경은 디렉토리 경로를 참조 할 때 백 슬래시 (\)를 사용하는 Windows 시스템입니다. 그러나 UNIX 시스템 (우분투의 경우)에서는 시스템이 슬래시 (/)를 사용합니다.

그러나 좋은 소식 Windows 시스템이 백 슬래시를 사용하더라도 Windows에서 PHP 스크립트를 실행하면 백 슬래시와 슬래시가 모두 같은 것으로 인식되므로 스크립트를 실행할 때마다이를 변경하지 않고도 사용할 수 있습니다 다른 OS에서.

TL : DR : \ 대신 /을 사용하십시오. Windows와 Ubuntu 모두에서 작동합니다.