"php" 태그된 글

27건의 포스트가 있습니다.

April 2018

2건의 포스트가 있습니다.

April 05, 2018

일반 PHP 프로젝트 개발 환경에서 docker 사용하기

지금 있는 회사에서도 정말 오래된 php 페이지가 발굴되어 작업해야 하는 경우가 간혹 있다. 예전에는 그냥 MAMP 같은 패키지를 사용해도 큰 문제가 없었다. 이 회사에서는 기본적으로 포함되어 있지 않은 익스텐션을 사용하는 경우가 많아서 (ldap이…

April 05, 2018

php callable 살펴보기

php에서는 이라는 타입 힌트를 제공한다. 이 타입 힌트는 말 그대로 호출이 가능한 클래스, 메소드, 또는 함수인 경우에 사용할 수 있다. php에서는 타입이 별도의 타입으로 존재하지 않는 대신에 문자열로 처리하고 있어서 다소 모호한 부분도 있다…


March 2018

1건의 포스트가 있습니다.

March 07, 2018

신입 PHP 개발자가 읽어야 하는 책

나도 신입으로 일을 시작했을 때 혼자 인터넷 검색창을 붙들고 코드와 씨름한 경험이 있었다. 작은 회사에서 유일한 개발자라 물어볼 선임도 없었고, 문제는 어떻게든 기간 내에 해결해야 하는 상황이 많았다. 모두가 신입 시절을 거치는 동안 그런 벽을 마주…


January 2018

1건의 포스트가 있습니다.

January 27, 2018

PHP에서 커링 currying 함수 작성하기

JavaScript에서 커링 currying 함수 작성하기 를 다시 보다가 PHP로도 작성해봤다. js 버전도 요즘 스타일로 작성하면 좀 더 간결할 것 같다. php와 js와의 차이점을 적어보면, 함수에서 몇 개의 파라미터를 사용하는지 알아내기 위해…


August 2017

1건의 포스트가 있습니다.

August 03, 2017

ReactPHP로 고성능 PHP 앱 만들기

Marc Johannes Schmidt 가 쓴 Bring High Performance Into Your PHP App (with ReactPHP) 을 번역했다. 2014년 초 글이라서 아마 php7을 사용한다면 여기에 언급된 벤치마킹보다 더 나은…


July 2017

2건의 포스트가 있습니다.

July 13, 2017

레거시 php 프로젝트를 composer 패키지로 바꾸기

요즘 작업하는 환경이 상당히 오래된 코드를 접할 수 있는 환경이라서 코드를 정리하는 일이 많은데 최근 버전에서도 돌아갈 수 있도록 코드를 정리하는 김에 패키지로 관리하고 테스트도 작성하도록 팀에 권하고 있다. 특별하다고 볼 만한 부분은 아니지만 정리…

July 07, 2017

PHP 함수 타입 선언과 정적분석도구 phan 활용하기

PHP에서도 다른 타입 언어처럼 함수 인자에 타입을 지정할 수 있도록 타입 선언(Type declaration)을 지원한다. 1 동적 타입 언어에서 왜 이런 문법을 사용해야 하는가에 대한 이야기는 여전히 많지만 타입 선언을 사용하는 쪽을 선호한다…


June 2017

1건의 포스트가 있습니다.

June 26, 2017

데이터베이스에서 객체를 지연 로딩(lazy loading) 하기

최근 프로젝트에서 PDO를 사용해 작업하다보니 아무래도 ORM에 비해 아쉬운 점이 많아 ORM의 구현을 살펴보는 일이 잦아졌다. Giorgio Sironi의 글 Lazy loading of objects from database 을 번역했다. 좀 …


May 2017

1건의 포스트가 있습니다.

May 25, 2017

제네릭 없는 PHP 인터페이스

PHP를 사용하면서 가장 아쉬운 부분은 인터페이스다. PHP는 인터페이스를 지원하고 있고 이 인터페이스를 활용한 타입 힌트, 의존성 주입 등 다양한 방식으로 적용 가능하다. 하지만 제네릭 타입이 존재하지 않아서 타입 컬렉션 같이 재사용하기 좋은 인터…


March 2017

1건의 포스트가 있습니다.

March 17, 2017

Satis로 PHP 패키지 리포지터리 만들기

PHP에서 Composer를 통해 사용할 수 있는 패키지 리포지터리 서비스인 Packagist는 오픈소스로 공개되어 있어서 필요하면 누구든지 받아 사용할 수 있게 되어 있다. 하지만 Solr이라든지 Redis라든지 요구하는 환경이 있어서 Packag…


October 2016

1건의 포스트가 있습니다.

October 12, 2016

레거시 PHP에서 모던 PHP로 – 뷰 분리하기

흔히 모던 PHP라고 말하는 현대적인 PHP 개발 방식에 대해 많은 이야기가 있다. 새 방식을 사용하면 협의된 명세를 통해 코드 재사용성을 높이고 패키지를 통해 코드 간 의존성을 낮출 수 있는 등 다른 프로그래밍 언어에서 사용 가능했던 좋은 기능을 …


February 2016

1건의 포스트가 있습니다.

February 15, 2016

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

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


December 2015

2건의 포스트가 있습니다.

December 15, 2015

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

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

December 14, 2015

당신이 PHP 개발자라면 2016년 놓치지 말고 해야 할 것들

여전히 PHP가 천덕꾸러기라고 생각하는 사람도 많다. 하지만 다른 언어에서만 볼 수 있었던 좋은 도구와 라이브러리, 의존성 관리도 지원하기 시작했고, PSR을 기준으로 표준도 활발하게 논의되고 있어 예전의 PHP 개발과는 확실히 분위기가 다르다. 한…


May 2015

1건의 포스트가 있습니다.

May 27, 2015

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

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


April 2015

4건의 포스트가 있습니다.

April 17, 2015

PHP 패키지 체크리스트

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

April 17, 2015

Micro-Framework, Lumen 살펴보기

Micro-framework의 전성기라고 할 만큼 다양한 환경과 언어로 프레임워크가 쏟아지고 있다. PHP에도 micro-framework가 많이 나와 있는데 1 최근 Laravel에서 Lumen을 발표 했다. 발표 자료에서는 symfony2 기…

April 15, 2015

PHP 네임스페이스

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

April 06, 2015

새로운 PHP 패키지를 작성하는 올바른 방법

SitePoint에 게시된, Bruno Skvorc의 Starting a New PHP Package The Right Way 포스트를 번역한 글이다. PHP는 autoload를 이용한 composer를 비롯 다양한 모듈화 방법이 논의되어 실제로…


January 2015

1건의 포스트가 있습니다.

January 02, 2015

Terminal에서 MAMP의 php 사용하기

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


September 2014

1건의 포스트가 있습니다.

September 15, 2014

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

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


July 2014

1건의 포스트가 있습니다.

July 15, 2014

MAMP에서 Sublime Text로 Xdebug 사용하기

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


March 2014

1건의 포스트가 있습니다.

March 03, 2014

WP_Query를 사용할 때 Properties가 제대로 동작하지 않는다면

WordPress에서 제공하는 클래스인 는 wordpress의 컨텐츠(Post, Page, Custom content etc.)를 쉽게 불러 사용할 수 있도록 도와준다. Widget이나 테마 등에서 컨텐츠 목록을 제공할 필요가 있을 때 편리하게 사…


November 2013

1건의 포스트가 있습니다.

November 02, 2013

PHP에서 DateTime Class 사용하기

PHP에서의 DateTime은 늘 문자열로 처리되어 를 엄청나게 사용하게 되고, 기간 비교를 위해 timestamp를 직접 다뤄야 하는 번거로움 등 불편함을 다 적기에 시간이 부족할 정도다. 5.2.0 이후 지원되는 은 다른 언어들과 비교하면 아…


October 2013

2건의 포스트가 있습니다.

October 29, 2013

PHP 기반의 Micro Frameworks 정리

근래 들어서는 공개적으로 하는 작업은 아니지만 잔잔하게 프로토타이핑은 꾸준히 하고 있는데 와 조합으로 진행하고 있었다. 는 micro web framework이며 micro 답게 간단하게 작성 가능해 생각나는 대로 작성하기 편리 는 class …

October 29, 2013

PHP 의존성 관리도구 – Composer 시작하기

Composer 라는 PHP 의존성 관리도구가 있다고 하길래 재빨리 찾아 Getting Started만 발번역했다. npm이나 apt, pip같은 것들과는 닮았지만 다른 부분이 많은데 그만큼 PHP라는 언어에 대한 고민의 흔적을 느낄 수 있다. Co…


August 2012

1건의 포스트가 있습니다.

August 08, 2012

PHP에서 Codeigniter 옮겨타기 1

먼저 다음 중 자신에게 해당되는 부분이 있다면 Codeigniter로 옮겨 탈 가치가 충분하다. 반복적인 작업에 자신이 만든 라이브러리(라고 스스로 칭하는 스파게티 소스코드)가 있는 사람 개발 로직과 마크업 요소가 뒤엉켜 있어 뭔가 수정할 일이 있을…