PHP-GTK

PHP-GTK
개발자안드레이 지미에프스키
발표일2001년 3월(25년 전)(2001-03)
안정화 버전
2.0.1 / 2015년 1월 15일(11년 전)(2015-01-15)
운영 체제크로스 플랫폼
종류언어 바인딩
라이선스GNU 약소 일반 공중 사용 허가서
웹사이트gtk.php.net

PHP-GTK는 PHP 프로그래밍 언어를 위한 언어 바인딩 세트로, GTK 그래픽 사용자 인터페이스(GUI) 응용 프로그램을 PHP로 작성할 수 있게 한다. PHP-GTK는 GTK 클래스와 함수에 대한 객체 지향 프로그래밍 인터페이스를 제공한다. PHP-GTK는 GTK2를 일부 지원하지만, GTK3는 지원하지 않는다.

역사

PHP-GTK는 원래 안드레이 지미에프스키(Andrei Zmievski)에 의해 구상되었으며, 그는 PHP와 젠드 엔진 개발에도 활발히 참여하고 있다. 이 아이디어는 PHP 커뮤니티에서 좋은 반응을 얻었으며, 더 많은 사람들이 프로젝트에 참여하기 시작했다. 제임스 무어(James Moore)와 스테프 폭스(Steph Fox)가 가장 먼저 합류한 사람들 중 하나로, 문서화 작업을 통해 PHP-GTK에 큰 기여를 했으며, PHP 개발 팀 소속인 프랑크 크로만(Frank Kromann)은 마이크로소프트 윈도우용 바이너리를 제공했다.

PHP-GTK의 첫 번째 버전은 2001년 3월에 출시되었다. 더 많은 사람들이 참여하기 시작했고, Scintilla 및 GtkHTML과 같은 새로운 GUI 위젯을 도입하는 여러 확장이 기여되었다. PHP-GTK 1.0은 2003년 10월에 여러 확장과 함께 출시되었으며, 여기에는 크로스 플랫폼 글레이드 인터페이스 디자이너 UI 빌더를 PHP-GTK 응용 프로그램 제작에 사용할 수 있게 해주는 libglade용 래퍼가 포함되었다.

지미에프스키와 폭스는 프로젝트 작업을 계속했으며, 폭스는 윈도우용 PHP-GTK를 유지 관리했다.

2008년, PHP 5.2의 강력한 객체 모델 지원을 완전히 활용하고 GTK 2.6의 향상된 이식성과 새로운 위젯 세트를 도입하기 위해 PHP-GTK 2.0.0이 출시되었다. 이 프로젝트는 소스 코드 편집기 위젯을 제공하는 GtkSourceView도 지원한다. 클래스의 절반 정도가 완전히 문서화되었다. PHP-GTK 문서 그룹의 일원인 스콧 매턱스(Scott Mattocks)는 PHP-GTK 프로그래밍을 주제로 한 책을 저술하기도 했다.

2015년, PHP 5.5 및 GTK 2.24와 호환되도록 PHP-GTK 2.0.1이 출시되었다.

이 프로젝트는 버전 3이 아닌 GTK 2와만 호환된다.

WxPHP (PHP용 WxWidgets)가 GTK PHP 응용 프로그램을 개발하기 위한 대안으로 존재한다.

예제

Hello World PHP-GTK
Hello World PHP-GTK
<?php

function pressed()
{
    echo "Hello again - The button was pressed!\n";
}

$window = new GtkWindow();
$button = new GtkButton('Click');
$button1 = new GtkButton('Click');

$window->set_title('Hello World!');
$window->connect_simple('destroy', array('Gtk', 'main_quit'));
$button->connect_simple('clicked', 'pressed');
$button1->connect_simple('clicked', 'pressed');
$window->add($button);
$window->show_all();

Gtk::main();

위의 PHP-GTK 2 샘플 프로그램은 "Hello World!"라는 제목의 GtkWindow 위젯을 인스턴스화하며, 그 안에 "Click Me"라는 라벨이 붙은 GtkButton을 포함한다. 버튼을 누르면 콜백 pressed를 통해 콘솔에 "Hello again - The button was pressed!"라는 메시지가 표시된다.

배포

PHP-GTK 응용 프로그램의 배포를 돕기 위한 여러 도구가 등장했다. PriadoBlender나 Roadsend PHP(현재는 PHP-GTK 1과만 호환되나, 최신 스냅샷에는 PHP-GTK 2가 포함됨)와 같은 PHP 컴파일러는 PHP-GTK로 작성된 응용 프로그램을 독립 실행형 이진 실행 파일로 컴파일할 수 있게 해준다. 앨런 놀스(Alan Knowles)의 PHP 확장 및 응용 프로그램 저장소(PEAR) 패키지인 bcompiler를 통해서도 PHP를 바이트코드로 컴파일하여 소스 코드를 숨길 수 있다.

같이 보기

각주

  1. ↑ “Language Bindings”. 2011년 7월 13일에 원본 문서에서 보존된 문서. 2015년 1월 28일에 확인함.
  2. ↑ Mattocks, Scott (2006년 4월 18일). 《Pro PHP-GTK》. Apress. ISBN 1-59059-613-7.
  3. ↑ “downloads?”. 2024년 1월 8일에 확인함.

외부 링크