PHP

PhpStorm 주요 단축키 10선

June 14, 2016 Dev

JetBrains: Development Tools for Professionals and Teams의 각종 IDE는 많은 고수 개발자들이 강력 추천하고 있다. 언어와 관계없이 거의 공통적으로 쓰이는 단축키이니 익혀두는 것이 좋을 것 같다. 주요 단축키...

라라벨은 시맨틱 버저닝을 사용하지 않는다

June 5, 2016 Code

최근에 라라벨 책을 저술하신 두 저자분 께서 라라벨이 마이너 업데이트 되었는데 예제 소스코드가 정상적으로 작동하지 않아서 고생하신 것을 본 적이 있습니다. 이와 관련하여 정광섭님이 이해할 수 없는 라라벨의...

떠나세요, PHP 개발자여. 아니면 잘하든가!

February 15, 2016 Dev

PHP 개발자는 그 태생부터 죄에 속한 것과 같이 업을 쌓고 산다. 아무리 좋은 디자인과 아키텍처, 방법론으로 무장하고 있더라도 그 죄성은 쉽게 씻겨지지 않는다. 어디서든 PHP 개발자라는 얘길 하면...

구석기 PHP와 현대적인 PHP 비교하기

December 15, 2015 Code

PHP는 언어적인 지원은 물론, 환경이나 커뮤니티도 계속 발전하고 있다. 최근 프레임워크 운용 그룹(Framework Interop Group, FIG)에서 제안하는 PSR 문서를 보면 알 수 있듯, 표준화된 라이브러리를 만들기 위해 라이브러리/패키지...

XECON 2015 Learning Laravel 발표자료

November 15, 2015 Blog

최근에 좋은 튜토리얼들이 쏟아져나와서 학습 전략이라는 말이 다소 무색해지긴 했지만 그래도 궁금해하시는 분들이 계실 수 있을 것 같아 발표자료를 공유해봅니다. Learning Laravel from Hyun-Seok Lee   Share

테스트하기 어려운 코드라는 6가지 신호

August 18, 2015 Blog

최근에 의존성 주입을 알게되어서 (신나서?) 마구마구 의존성을 주입하다보니 한 클래스를 생성하는데에 너무 많은 의존성을 주입하는 경우가 생기더군요. 가장 많은 건 13개까지… 그래서 과연 내가 잘하고 있는 것이 맞나...

ORM 좋네요 좋아

August 12, 2015 Blog

Eloquent ORM을 이용하여 아래의 데이터를 조회하기 위한 코드를 작성했습니다. A가 가진 모든 B들과 그 B들이 가진 모든 C들 중 A와 관련 있는 것만 추린 것들과 그 C들이 가진...

Do Not Brew Language: Installing Language by Homebrew Is NOT Clean

July 22, 2015 Blog

※ 이 글은 원본이 갱신되었습니다. 원본을 읽어주시면 감사하겠습니다.   소프트웨어 마에스트로를 처음 시작했을때의 일이다. 우리 팀은 Python 3.4를 사용했다. 나는 처음 맥북을 사고는 brew뽕에 취해서1 gcc와 Python 3...

PHP 7과 연관된 RFC 이야기

June 18, 2015 Blog

며칠 전에 PHP 7 alpha 첫 버전이 나왔다. 나는 호기심에 PHP의 feature들이 어떤 과정으로 결정되었는지 살짝만 찾아보았는데, PHP 7에 추가하자고 제안된 기능들을 몇가지 살펴보고, PHP의 의사결정 방식을 좀...

Laravel 컨트롤러 테스트 작성 요령

June 7, 2015 Blog

테스트를 작성할 때 무엇을 테스트 할 것인지를 결정하는 것이 참 어려운 것 같습니다. Jeffrey Way 의 조언을 따르니 컨트롤러 테스트 작성에 꽤 도움이 되네요. “Controller tests should verify...

PHP의 json_encode() 함수에서 JsonSerializable 활용하기

May 27, 2015 Blog

PHP에서 데이터를 json 문자열로 변환할 때 json_encode(mixed $value) 함수를 사용하게 된다. 이 함수를 이용해 개체도 변환할 때에도 활용할 수 있다. 기본적으로는 클래스에서 public인 프로퍼티에 대해서만 json으로 반환한다. protected나...

PHP 패키지 체크리스트

April 18, 2015 Blog

PHP Package Checklist의 번역 글이다. 패키지 개발을 하지 않고 있더라도 PHP 개발을 하고 있다면 충분히 염두해볼 만한 내용이 포함되어 있고 참고할 이야기가 많다. 패키지명을 현명하게 선택할 것 다른...

Micro-Framework, Lumen 살펴보기

April 17, 2015 Blog

Micro-framework의 전성기라고 할 만큼 다양한 환경과 언어로 프레임워크가 쏟아지고 있다. PHP에도 micro-framework가 많이 나와 있는데1 최근 Laravel에서 Lumen을 발표했다. 발표 자료에서는 symfony2 기반인 silex보다 1.9배 빠르다고 하는데 문법적으로는...

PHP 네임스페이스

April 15, 2015 Blog

PHP 5.3에서 새로운 기능으로 네임스페이스가 추가되었다. (= 이미 오래된 기능이다.) 많은 현대 언어는 이미 이 기능을 추가한지 오래지만 PHP는 조금 늦게 추가되었다. 최근에 개발되는 대다수의 PHP 라이브러리는 네임스페이스로...

OSX Yosemite(10.10) 에서 Apache & PHP 설정

January 5, 2015 Blog

Apache Version 확인 apachectl -v PHP Version 확인 php -v Apache 설정 ( virtual hosts ) sudo nano /etc/apache2/httpd.conf - 주석(“#”) 제거 LoadModule authn_core_module libexec/apache2/mod_authn_core.so LoadModule authz_host_module libexec/apache2/mod_authz_host.so Include...

Terminal에서 MAMP의 php 사용하기

January 2, 2015 Blog

요즘 대부분의 php 도구들이 콘솔에서 사용할 수 있도록 제공되고 있다. OSX에는 기본적으로 php가 설치되어 있고 별다른 설정이 없다면 이 php를 사용하게 된다. composer 같은 도구는 php 버전이나 모듈과는...

PHP 클래스 자동으로 불러오기 (Autoloading)

September 16, 2014 Blog

객체 지향 프로그래밍에 익숙한 개발자라면 하나의 파일에 하나의 클래스를 작성하는 방식에 익숙할 것이다. 다만 php는 다른 언어와 같이 라이브러리를 일괄적으로 불러오는 방법이 없어 위와 같은 접근 방법으로는 require...

PHP 5.6을 눈 앞에 둔 zb4 유저의 심경

August 4, 2014 Blog

진퇴양난 진심으로 답이 안선다. 홈페이지를 zb4로 짜놓고선 그냥 유지보수만 해왔더니 PHP 5.6이 코앞에 와있다. PHP 5.5부터 zb4에서 가장 많이 쓰이는 mysql_* 계통의 함수들이 모두 deprecated 되어버렸다. 아직 5.6...

MAMP에서 Sublime Text로 Xdebug 사용하기

July 15, 2014 Blog

PHP를 디버깅하기 위해서는 Xdebug와 같은 확장을 서버에 설정해야 하고 리모트로 디버깅 하기 위한 클라이언트 프로그램이 요구된다. 이 글에서는 서버로 MAMP를 활용하며 클라이언트로 Sublime text를 활용한다. Xdebug 활성화하기 MAMP에는...

내게 리눅스는 너무도 어렵다

June 5, 2014 Blog

오늘 오후를 통째로 리눅스 설치와 삭제로 날려먹었다. 원인은 Ubuntu가 PHP5.5를 지원하지 않아서…. 처음엔 ppa인가 뭔가를 추가해줬다. 깡그리 씹혔다. 잡다한 설치로 인한건가 싶어 스냅샷을 초기로 돌렸다. 여전히 안된다. Ubuntu는...

PHP 마크다운 확장 번역

March 25, 2014 Blog

목차 예전에 존 그루버 마크다운 페이지 번역 포스트에 이어 마크다운에 관한 글은 참 오래간만에 올린다. 존 그루버가 마크다운 페이지가 워낙 오랫동안 업데이트되지 않아 여러 가지 확장 버전이 나왔는데...