PHP로 원격 호스트에 CLI 커맨드 실행법

원격 호스트에 명령을 실행하기 위해서는 우선 SSH 키를 통한 연결이 필요합니다. SSH 키를 연결하는 방법은 오픈튜토리얼스의 강좌 참고하시면 됩니다. 우선 SSH 라이브러리를 좀 더 편리하기 쓰기 위해 랩퍼를 하나 설치합니다. 이 라이브러리를 사용하기 위해서는 PHP에 ssh2 익스텐션이 설치되어 있어야 합니다. ...

1월 8, 2019 · 1 분 · Sangheon Han

바쁜 팀장님 대신 알려주는 신입 PHP 개발자 안내서

프로그래밍을 배우는 방법은 다양합니다. 어떤 사람은 책으로, 또 다른 이는 동영상 강의로, 운이 좋은 사람들은 학교에서 전공으로 배우기도 합니다. 배우는 것 또한 다양합니다. 각종 프로그래밍 언어를 배우기도 하고, 알고리즘과 자료 구조를, 가끔은 수학 이론을 배울 때도 있습니다. ...

3월 1, 2018 · 2 분 · Sangheon Han

PHP 배열 세가지: Array, SplFixedArray, Judy Array

PHP를 사용하면서 배열(Array)를 사용하지 않는 경우란 매우 드물겁니다. 배열(Array)와 사전(Dictionary)로 구별하는 Perl이나 Python과 달리 둘이 합쳐진 모양새를 가진 PHP 배열(이하 Array)은 PHP로 프로그래밍을 할 때 감초처럼 빠지지 않는 자료 구조일겁니다. ...

7월 12, 2017 · 3 분 · Sangheon Han

디렉토리 내 특정 패턴의 파일과 디렉토리 모두 찾기

특정 디렉토리 내의 파일과 서브디렉토리 중 특정 패턴을 찾을 경우가 종종 있습니다. 기존의 시스템 함수를 이용하여 처리하려면 코드가 꽤 길어지지만, SPL(Standard PHP Library)를 이용하면 짧으면서 우아하게 처리 할 수 있습니다. ...

6월 16, 2017 · 1 분 · Sangheon Han

Composer에서 GitHub 저장소 이용하기

Composer를 이용 할 때 Packgist에 있는 패키지라면 composer require로 손쉽게 이용 가능하지만, 그렇지 않은 경우 약간의 설정을 해주어야 합니다. GitHub을 예로 들자면, 저장소에 composer.json이 포함되어 있는 경우 간단히 repositories 내용을 추가함으로서 이용 가능합니다. ...

5월 2, 2017 · 1 분 · Sangheon Han

많은 양의 작업을 정해진 갯수의 프로세스로 동시에 처리하기

여러 사이트를 동시에 크롤링 하는 등의 작업을 위해서는 동시에 웹페이지 내용을 가져오는 것이 거의 필수적입니다. 하지만, 가져올 페이지가 10000개라고 동시에 10000개를 모두 가져 올 수는 없습니다. 서버 사양이나 네트워크 대역폭을 감안하여, 동시에 수십개 정도 사이트를 수집하는 정도가 일반적입니다. ...

8월 23, 2016 · 2 분 · Sangheon Han

PEAR: Console_CommandLine

설치 Console_CommandLine 패키지는 명령행 인자를 파싱하는 PEAR 라이브러리입니다. 컴포져를 이용해서 설치하려면 composer.json에 다음 내용을 알맞은 위치에 추가하면 됩니다. ...

4월 27, 2015 · 9 분 · Sangheon Han

PEAR: Log

기본사용법 대부분의 프로그래밍 언어는 여러 모듈과 라이브러리를 관리하기 위한 시스템을 가지고 있다. PHP는 PEAR(PHP Extension and Application Repository)라는 시스템을 가지고 있는데, 현재는 컴포져(Composer)에 밀려나는 중이다. 모던 PHP(Modern PHP)를 위해서라도 컴포져를 쓰는 것이 더 좋겠지만, 때로 아직은 PEAR를 써야 할 일이 종종 있다. 물론 이 경우라도 컴포져를 통해서 PEAR를 사용하는 것을 적극 권장한다. 컴포져를 이용해 PEAR를 사용하는 방법은 컴포져 설명서에 자세히 나와있다. ...

4월 20, 2015 · 6 분 · Sangheon Han

PHP는 언제까지 살아남을까?

프로그래머라면 자신이 쓰는 기술이 언제까지 쓰일지가 큰 고민중 하나다. 새로운 기술을 배우면 된다지만, 아무래도 나이가 들면 젊었을때만큼 순발력이 나오지 않는다. 결국 갈수록 새로운 기술로 넘어가는데 시간이 오래 걸리게 되고, 사람에 따라 다르지만 그 한계가 부딪힐 때가 언젠가는 나타난다. 그 때가 되면 카페를 차려야 하나 고민이 들기 시작한다. ...

9월 1, 2014 · 2 분 · Sangheon Han

PHP 기본 함수/클래스 명명 규칙

PHP 비판 중 빠지지 않는 것이 함수 명명의 일관성이 없다는 것이다. 맞는 말이다. PHP 함수들 중 예전에 만들어졌고, 아직도 폐기되지 않은 것 중 많은 함수들이 일관성이 없다. 일부는 C 표준 라이브러리 이름과 일치하고 있으며, 어떤 것은 그렇지 않다. ...

2월 26, 2014 · 2 분 · Sangheon Han