IT/web12 [PHP] 문자열 앞글자 삭제하기 예제, ltrim/substr 활용 문자열 앞글자 삭제하기 예제 remove the first character of string php 내장 함수인 ltrim과 substr을 이용하여 문자열의 앞글자 하나만 삭제하는 예제를 보겠다. 1. ltrim() 활용 - 문장의 가장 앞글자가 동일한 패턴인 경우 ltrim()의 이용이 가능하다. 아래 예제처럼 앞글자가 "/"로 반복하는 경우 ltrim()의 인자로 "/"를 사용하여 trimming 할 수 있다. ltrim()은 left trim을 의미하고 좌측의 공백을 없애는 기능을 하지만 인자으로 받는 문자(문자열도 가능)도 없애준다. 즉 좌측 기준 인자로 준 문자와 매칭되면 삭제를 수행한다. // Strip whitespace (or other characters) from the beginni.. 2022. 1. 12. [PHP] fileperms을 활용한 파일 탐색과 퍼미션 검사 fileperms을 활용한 파일 탐색과 퍼미션 검사 이전에 작성한 탐색기 함수를 이용하여 대상 경로의 모든 파일 중 사용자가 지정한 퍼미션이 아닌 파일을 배열로 반환하는 함수를 만든다. 공동 공간에서 작업을 하거나 서버 내 파일 생성/삭제 등 여러 파일을 제어하다 보면 퍼미션이 꼬이는 경우가 종종 발생한다. 특히 웹 서비스와 관련된 파일을 만들고 관리하다 보면 퍼미션으로 인해 웹 페이지에서 접근이 안 되는 경우가 많다. 그럴 때 일괄적으로 특정 경로의 퍼미션 체크를 할때 유용하게 사용된다. ▽ 파일 탐색기 함수 포스팅 https://muabow.tistory.com/249 [PHP] readdir을 활용한 파일 목록 읽기 예제, 파일 탐색기 readdir을 활용한 파일 목록 읽기 예제, 파일 탐색기 op.. 2022. 1. 6. [PHP] readdir을 활용한 파일 목록 읽기 예제, 파일 탐색기 readdir을 활용한 파일 목록 읽기 예제, 파일 탐색기 opendir, readdir, is_dir 함수를 사용하는 재귀 함수로 구성하였다. 디렉터리는 제외하고 파일만 조회하고 탐색된 전체 경로(full path)를 배열로 반환한다. 사용방법은 함수의 인자로 탐색할 경로를 명세하면 된다. https://github.com/muabow/home/tree/main/src/php/get_file_list GitHub - muabow/home: C/C++, PHP, GO source/library C/C++, PHP, GO source/library. Contribute to muabow/home development by creating an account on GitHub. github.com 소스코드 .. 2022. 1. 6. [PHP] web shell 설명 및 예제 공유 web shell 설명 및 예제 공유 - web shell, 웹 쉘은 웹 페이지를 통해 shell을 사용하는 것을 의미한다. 보통 shell은 telnet, ssh 등 단말에 접속할 수 있는 프로토콜을 이용하여 접속하는데 개발 환경의 테스트, 현장 대응 등 여러 가지 이유로 백도어(backdoor, 개구멍)처럼 하나씩 숨겨놓기도 한다. web shell은 일반적인 서비스의 포트 스캐닝이나 별도의 검증 툴로 확인할 수 없기 때문에 오픈 되는 경우 문제의 인지를 할 수 없어 많은 사고를 야기한다. 그러므로 개발 중 테스트 또는 인증 절차를 통한 원격 지원용 정도로만 사용하자. https://github.com/muabow/home/tree/main/src/php/web_shell GitHub - muabow.. 2022. 1. 6. [PHP] curl GET/POST Rest API 인증, 요청 및 JSON 응답 처리 방법 curl GET/POST Rest API 인증, 요청 및 JSON 응답 처리 방법 - php curl 요청(request) 및 응답(response)을 쉽게 처리할 수 있는 함수를 소개한다. php 에서 Rest API 서버에게 요청과 응답을 하기 위해 php curl 을 사용한다. php curl 사용 방법은 많지만 사용하기 쉽도록 함수를 만들어 보았다. php curl의 오류 검증, HTTP response 의 response code 검증, json decode 검증을 통해 정상적인 JSON response 데이터인지 검증한다. 그리고 오류 시 각 상황에 맞는 HTTP code의 message로 JSON 데이터를 구성한다. 사용 방법은 아래 소스 코드를 참고하자. https://github.com/.. 2022. 1. 6. [javascript] javascript IP 주소, 포트 유효성 검사 예제 javascript IP 주소, 포트 유효성 검사 예제 - ip address, port, check, validation javascript 에서 자주 사용되는 기능인 IP주소와 포트 검사 함수 코드를 공유한다. 정규식과 .test() 를 이용하여 IP주소 패턴을 검증하고, isInteger()를 이용하여 포트 값을 검증한다. 함수의 범위 검증은 소스코드에서 확인하자. 소스 코드 결과 - 크롬 브라우저에서 F12 개발 도구 > 콘솔 보기를 통해 console.log() 로 찍은 결과를 확인한다. 위 소스 코드의 주석 결과와 같이 출력되는 것을 확인할 수 있다. jquery의 $.isNumeric 과 동일한 기능을 수행하는 Number.isInteger() 의 자세한 설명은 아래의 사이트를 참고하자. h.. 2022. 1. 5. [PHP] top 또는 ps 에 보이는 php 프로세스명 변경 방법 top 또는 ps 에 보이는 php 프로세스명 변경 방법 - cli_set_process_title() 리눅스 환경에서 top 또는 ps 시 현재 실행 중인 프로세스 목록을 확인 할 수 있다. 그 중에 php로 실행된 파일들의 이름은 [php /.../exec.php] 처럼 php 가 어떤 파일을 실행시켰다. 라고 명세가 되어 이게 어떤 프로세스인지 구분하거나 프로세스명으로 제어하는 명령어를 사용하기 어렵다. 그래서 cli_set_process_title()을 사용하여 프로세스명을 변경하여 사용한다. 함수 정의 - top 및 ps 에서 보이는 프로세스의 이름을 변경한다. CLI에서만 동작한다. cli_set_process_title(string $title): bool 예제 코드 : 프로세스명 변경 미적.. 2022. 1. 5. [PHP] php error 메시지 출력 방법 php error 메시지 출력 방법 php 같은 interpreter 언어들은 페이지의 호출과 동시에 해석을 시작하기 때문에 디버깅이 무척 어렵다. 특히 php는 server side 언어라서 모든 처리가 끝난 후 결과만 브라우저에 현시되기 때문에 왜 오류가 나는지, 어디서 오류가 나는지. 오류로 인해 화면이 백지로 나오는 경우도 다반사다. 그럴때는 브라우저에서 오류를 확인하기 위해 다음과 같은 코드를 php 페이지 가장 상단에 삽입하자. 자세한 내용은 다음 URL에서 확인할 수 있지만 예제 제공되는 함수와 옵션들을 보겠다. https://www.php.net/manual/en/function.error-reporting.php PHP: error_reporting - Manual I always cod.. 2021. 12. 31. 이전 1 2 다음