본문 바로가기

php19

[PHP] file_exists()에 공백이 포함되었을 때 해결 방안 file_exists()에 공백이 포함되었을 때 file_exists() 에 입력하는 경로가 공백을 포함하고 있다면 bool(false) 를 반환하는 문제가 있다. 파일의 경로에 공백이 없는게 최선이겠지만 그게 내 뜻 때로만 되면 얼마나 좋을까. 그래서 file_exists() 에 공백을 인식시키기 위해서 여러 방법들을 사용해봤지만 생각처럼 동작하지 않아 대안을 만들어서 file_exists() 를 사용하지 않고 대체하였다. // 기존 $result = file_exists(""); var_dump($result); // bool(false) // 대체 $result = (int)shell_exec("ls | wc -l"); var_dump($result); // int(1) shell_exec()와 l.. 2021. 12. 27.
[PHP] shell_exec() 한글이 포함된 svn 이 동작하지 않을 때 해결 방안 shell_exec() 로 한글 경로가 포함된 svn 이 동작하지 않을 때 결론부터 얘기하면 shell의 locale 문제였다. shell에서 실행하면 shell에 설정된 locale에 따라 url encode 가 동작하니 당연히 정상으로 동작하고, web을 통해 실행하면 shell_exe()의 기본 환경(LC_CTYPE=C) 때문에 한글 경로가 오류 나는 것이었다. shell - locale 실행 결과 interm@interm-virtual-machine:~/www/public_html$ locale LANG=en_US.UTF-8 LANGUAGE= LC_CTYPE="en_US.UTF-8" LC_NUMERIC=ko_KR.UTF-8 LC_TIME=ko_KR.UTF-8 LC_COLLATE="en_US.UTF.. 2021. 12. 27.
POST 시 수신 측에서 데이터 짤려서 받을 때 POST 시 수신 측에서 데이터 짤려서 받을 때 웹 페이지에서 새로운 윈도 팝업을 띄우면서 post를 하는 간단한 동작을 만들었다. 현재 프로토 타입이라 json 데이터는 약 8만 바이트를 약간 넘는 작은 사이즈임에도 불구하고 데이터 일부가 유실되는 상황이 발생하였다. 처음에는 보내는 쪽을 console.log 및 F12 개발도구에서 request / response 데이터를 살펴보았지만 request 데이터는 정상적으로 송신하였고 response는 받은 만큼만 처리해서 응답하는 것을 확인하였다. 그래서 다른 해결 방법을 찾으려 linux 내에서 apache2 error 로그를 확인하다보니 재미있는 문장을 발견하였다. tail -f /var/log/apache2/error.log [Tue Dec 21 0.. 2021. 12. 21.