> 백엔드 개발 > PHP 튜토리얼 > PHP를 사용하여 크로스 플랫폼 데스크탑 앱을 개발하는 3 가지 방법

PHP를 사용하여 크로스 플랫폼 데스크탑 앱을 개발하는 3 가지 방법

Christopher Nolan
풀어 주다: 2025-02-19 09:26:10
원래의
638명이 탐색했습니다.

PHP를 사용하여 크로스 플랫폼 데스크탑 앱을 개발하는 3 가지 방법 크로스 플랫폼 데스크탑 앱 개발 언어로서의 PHP? 신성 모독! 그럼에도 불구하고 가능합니다.

몇 년 전, PHP를 데스크탑에 가져 오는 데 관심이있는 모든 사람들은 현재 오랫동안 버려진 GTK PHP였습니다. 그 이후로 새로운 플레이어가 등장했지만 먼저“왜”에 대답하겠습니다.

키 테이크 아웃

PHP는 웹 개발에 주요 사용에도 불구하고 크로스 플랫폼 데스크탑 응용 프로그램을 개발하는 데 사용될 수 있습니다. 이 기사에서는 Nightrain, WXPHP 및 TideSDK의 세 가지 주요 도구에 대해 설명합니다. tidesdk는 HTML, CSS, JS 및 PHP와 같은 기타 스크립팅 언어를 사용하여 응용 프로그램을 렌더링하는 오픈 소스 프로젝트입니다. 그러나 오래된 PHP 버전, 다른 DOM API 및 다른 플랫폼 용 앱을 구축 할 수있는 여러 환경이 필요합니다. Phpdesktop, Webinder 및 PHP GTK와 같은 기타 옵션은 구식, Windows-Victorment 또는 둘 다이므로 멀티 플랫폼 솔루션에 대해 덜 실행 가능합니다. 데스크탑 용 PHP 앱을 개발하는 것이 항상 정당화되지는 않지만 옵션이 특정 시나리오에 유용 할 수 있음을 알면

왜?

    왜 데스크탑 용 크로스 플랫폼 PHP 앱을 개발 하는가? Adobe Air와 같이 실제로 운영 체제의 낮은 수준 API에 묶을 수있는 것을 선택하지 않겠습니까? Java와 같이 구식적이고 부풀어 오르지 만 신뢰할 수있는 무언가를 가지고 가지 않겠습니까? Chrome 앱으로 만들고 기본 지원이 필요한 경우 기본 클라이언트를 사용해보십시오. 지옥, 스크립팅 언어를 원한다면 왜 Python과 함께 가지 않겠습니까? 우리가 서버를 Shebang 전체와 함께 묶지 않아도되는 한 모든 것이갑니다. 내 머리 꼭대기에서, 나는 몇 가지 멀리 떨어진 시나리오를 생각할 수 있습니다 :
      쉬운 구문과 PHP의 좋은 구조 사이에 좋은 중간 지점이 필요하며 Actionscript 와 같은 새로운 언어를 배우는 것을 귀찮게 할 수 없습니다. 당신은 고도로 컴퓨터 문맹 인 사람들이있는 회사에서 그것을 실행하고 있으며, 회사 앱에 좋은 브라우저를 사용하도록 강요하는 유일한 방법은 제공하는 앱에 포함시키는 것입니다. 여전히 웹 앱이지만 헤드리스 크롬으로 열립니다! 당신은 자신의 개인 신청에 대한 호스팅 비용을 지불하지 않기를 원하며 USB 스틱에서 당신과 함께 가지고 다니는 것을 좋아합니다. 당신은 그것을 연결하고 실행하면 앱이 이전과 동일한 SQLite DB를 사용하여 있습니다. 온라인으로 동기화 해야하는 경우 버튼을 클릭 할 때 전체 DB 내보내기를 Dropbox 또는 해당 서비스로 보내므로 문자 그대로 컴퓨터 없이도 "웹 앱"에 액세스 할 수있는 유일한 사람입니다.
    1. 낮은 레벨 OS API 액세스가 필요하지 않습니다. 브라우저 기반 게임, 도우미 앱 또는 유사한 간단한 것만 만들고 싶습니다. PHP는 완벽하게 괜찮으며 이미 언어를 알고 있습니다.
    2. 이 시나리오는 빨대를 잡는 것처럼 보일 수 있으며, 실제로, 나는 실질적인 대안이없는 실질적인 실질적인 이유를 생각할 수 없습니다. 그래도 가능하다는 것을 아는 것이 좋습니다. 방법을 보자.
    3. 1. nightrain . 또 다른 큰 사기는 Windows에서 명령 프롬프트가 먼저 시작된 다음 "앱"이라는 것입니다. 앱을 사용하려면 명령 Windows가 열려 있어야하며, 이는 시나리오 2의 기술적으로 문맹 인 사람들에게 약간 혼란 스러울 수 있습니다. 기본적으로 하나의 Nightrain 앱 만 실행할 수 있습니다. 실제로 포트 8000에서 서버를 시작한 다음 "비밀리에"오픈하는 Headless 브라우저를 LocalHost : 8000을 방문하는 헤드리스 브라우저를 만들 수 있습니다. 여러 가지 다른 Nightrain 앱을 시작하려면 Settings.ini에서 포트를 변경해야합니다. 이것은 또한 호스트 머신 브라우저에서 LocalHost : 8000을 방문하는 것만으로도 동일한 앱을 보여줄 것입니다.
    앱의 가장 큰 단점은 WX 위젯을 사용하여 헤드리스 브라우저에 전원을 공급하고 Windows에서 IE7로 내려 오는 것 같습니다. 위에서 연결된 문제에 언급 된 바와 같이 Wxpython을 통해 변경할 수 있지만 아직 시도되지 않았습니다. 브라우저 객체가 곧 더 유용한 것으로 업데이트되기를 희망 할 수 있습니다. 그때까지 다른 모든 중요한 단점이 고정 될 때까지 Nightrain의 사용을 상상하기 시작할 수는 없습니다.

    .

    2. wxphp

    WXPHP는 "WXWIDGETS for PHP"를 나타냅니다. WXWIDGETS 라이브러리를 랩핑하는 PHP 확장자이며,이를 통해 다양한 플랫폼에 사용할 수있는 기본 그래픽 구성 요소를 사용할 수있는 다중 플랫폼 데스크톱 응용 프로그램을 작성할 수 있습니다. - wikipedia

    당신은 별도의 프로그램으로 wxphp를 설치 한 다음, 단순히 이중화하여 .wxphp 파일을 실행할 수 있도록합니다.

    이것은 응용 프로그램이 단순한 파일이라는 것을 의미하며, 어디서나 쉽게 배포 할 수 있습니다. 코드를 평소와 같이 파일 및 클래스로 구성하고 폴더를 배포 할 수 있습니다. 메인 .wxphp 파일에는 이러한 다른 리소스를 포함 할 수 있습니다.

    설치에는 WebView를 초기화하고 WXPHP 웹 사이트를 WX 프레임에로드하는 예제를 포함하여 몇 가지 예제가 제공됩니다. 주목할만한 점은 WXPHP를 사용하면 웹에서와 같이 웹 사이트를 개발하지 않는다는 것입니다. 다시 말해, 오프라인 웹 사이트를 개발하지는 않지만 다양한 WX 위젯을 함께 묶습니다. 따라서 라이브러리에는 약간의 학습 곡선이 있으며, 사용했던 HTML5 기능 또는 웹 개발의 단순성이 부족합니다. 내부 PHP 서버 실행 및 서비스 요청에 대한 개념 증명이 있지만 실험적이고 복잡하며 Nightrain과 마찬가지로 LocalHost를 다시 노출시킵니다. .

    WXPHP는 또한 사랑스러운 양식 건축 도구와 함께 제공되어 WYSIWYG 편집기를 통해 WXPHP 앱에 필요한 PHP 코드를 자동으로 생성하는 데 도움이됩니다.

    WX를 사소한 것으로 기각하기 전에 사람들은 기본 앱보다 더 많은 것을 개발했습니다. 예를 들어, 원격 디버깅과 플러그인 API가있는 PHP 편집기는 다음과 같습니다. PHP 데스크톱 개발에 대해 진지하게 생각한다면, Nightrain이 GUI에 대해 좋은 오래된 HTML을 작성할 수 있지만 WXPHP는 Nightrain과 비교할 때 훨씬 더 나은 옵션입니다. 여기서 WX의 가장 큰 장점 중 하나는 일단 설치되면 모든 .wxphp 파일을 마우스 클릭 할 때 실행할 수 있다는 사실입니다. 추가 설치가없고 어색한 콘솔 창이 없습니다. 기술적으로 문맹 인 사람들에게는 신의 선물입니다. 간단한 이메일을 통해 회사 내부에서 앱을 쉽게 배포 할 수 있으며, 업데이트 절차는 파일을 덮어 쓰는 것만 큼 간단합니다.

    3. Tidesdk tidesdk는 위의 두 가지와 다소 다른 접근법을 가지고 있습니다. 응용 프로그램을 개발할 수 있도록 SDK를 설치하고 각 플랫폼에는 특정 전제 조건이 있습니다. TidesDK는 실제로 이름이 바뀌는 Titanium Desktop 프로젝트입니다. 티타늄은 모바일에 집중하고 데스크탑 버전을 포기했는데,이 데스크탑 버전은 공개 공급원을 사용하여 Tidesdk라고 불렀습니다. 일단 시작 가이드에 따라 설치되면 Tidesdk Developer 앱 (응용 프로그램을 분산 가능한 패키지로 번들로 연결하는 데 도움이되는 도우미 응용 프로그램)이 있으면 개발을 시작할 수 있습니다. 조수로 구축하는 앱 (헬퍼 앱 또는 명령 줄을 통해)은 순수하게 실행 가능한 것으로 배포되거나 설치 절차를 포함하여 전체 "앱"처리를 얻는 설치 가능한 패키지로 배포 할 수 있습니다. Windows 또는 다른 운영 체제의 패키지 관리자에서 프로그램 추가/제거를 통해.

    응용 프로그램 리소스는 WebKit 클라이언트 및 친숙하고 광범위한 API와 함께 사용됩니다. API는 권한이 있으며 파일을 읽고 관리 할 수있는 파일 시스템 액세스를 제공합니다. API는 또한 로컬 데이터베이스를 생성하고 상호 작용하기 위해 제공됩니다. Network API를 사용하면 클라이언트 및 서버를 생성하거나 HTTP와 훨씬 더 낮은 수준에서 인터페이스 할 수 있습니다. 다른 서비스에 소켓 연결을 열 수도 있습니다.

    일반적으로 Tidesdk는 HTML, CSS 및 JS를 사용하여 응용 프로그램을 렌더링하지만 Python, Ruby 및 PHP와 같은 스크립트 언어도 지원합니다. 렌더링 뒤에있는 엔진은 WebKit이므로 시작이 다소 느리게하지만 최신 웹 기술을 지원합니다.

    .

    TidesDK의 심장은 WebKit 구성 요소에 컴파일 된 객체 브리지입니다. 다리는 다른 스크립팅 언어 (Python, PHP 또는 Ruby)를 통해 JavaScript와 같이 DOM의 스크립트 태그를 사용하여 HTML 페이지에서 실행할 수 있습니다. 응용 프로그램 내에서 .py, .rb 또는 .php 파일을 직접 호출 할 수도 있습니다.

    PHP는 Manifest 파일에 모듈 문을 추가하여 활성화됩니다.

    스크립팅 언어에 스크립트 모듈을 사용하면 앱의 설치 및 런타임에 대한 성능 처벌이 발생합니다.흥미롭게도, Tidesdk는 앱에서 PHP를 사용할 때 JS에서 PHP로 원활하게 데이터를 변환 할 수있는 객체 브리지를 특징으로합니다. 여기에서 자세한 내용을 읽을 수 있지만 자세한 Tidesdk 튜토리얼이 곧 출시됩니다.

    PHP 데스크탑 앱 개발에 Tidesdk를 사용하는 데 몇 가지 주요 단점이 있습니다.

    PHP 개발 워크 플로는 심각하게 문서화되어 있고 버그에 매우 취약하지만 디버그하기가 거의 불가능합니다. 묶음 PHP 버전은이 글을 쓰는 시점에 5.3.x 버전입니다. SDK의 설치 디렉토리의 /모듈 폴더를 통해 최신의 것으로 바꾸는 것은 비교적 쉽지만 추가적인 성가신이므로 Desktop 앱 개발에 편리 할 수있는 많은 최신 PHP 기능이 부족합니다. 여기에서 난해한 사용 사례를 얻을 수있는 내장 서버.

    학습 곡선이 있습니다. DOM API는 웹 개발에 사용될 수있는 것과 다릅니다. 화면에 무언가를 반영하려면 에코 대신 $ document-> write ()를 호출해야합니다. 사소한 차이이지만 문서화되지 않았으며 당신을 여행 할 수 있습니다.

    가장 큰 단점은 편집입니다. 앱을 구축하여 얻은 패키지는 구축 한 플랫폼에 묶여 있습니다. 여러 환경에 대한 앱을 구축하려면 여러 환경이 있어야합니다. Windows/Linux Disparity는 가상 머신으로 쉽게 해결됩니다 (호스트가 Windows이고 다른 방법보다 Linux VM이있는 경우 쉽게 해결할 수 있지만 OS X 장치가없는 한 OS X 용으로 컴파일하는 행운을 빕니다. ,
    1. tidesdk는 깔끔한 옵션이지만 사용하기 쉽습니다. HTML/CSS/JS 전달에 큰 도움이되지만 PHP와 관련하여 WXPHP가 여전히 최선의 방법이라고 생각합니다.
    2. . 기타 옵션 다른 옵션도 사용 가능하지만 가장 말하는 것은 압도적입니다.
    3. Phpdesktop은 nightrain과 유사하지만 Windows 만 있습니다. 반면에 몽구스 서버와 함께 번들로 제공되므로 병렬 요청을 실행할 수 있습니다. 또한 크롬을 실행하므로 렌더링/개방이 느리지 만 최신 웹 기술을 지원합니다. Windows-Exclusivity는이 다중 플랫폼 솔루션 목록에서 실격됩니다.
    4. 웨더와 PHP GTK는 심하게 구식이며 아마도 사용해서는 안됩니다. 그 외에도 Webinder는 Windows 전용입니다.
    5. 결론 데스크탑 용 PHP 앱을 구축하는 이유는 사용 사례마다 다르고 종종 정당화하기가 쉽지 않지만 옵션이 필요하다는 것을 아는 것이 좋다고 생각합니다. PHP에서 데스크탑 앱을 개발 했습니까? 그렇다면, 왜 당신이 사용했는지, 어떤 기술을 사용했는지 알려주십시오 - 나는 당신의 경험에 대해 절대적으로 글을 쓰고 싶습니다. 다른 옵션을 알고 있습니까? 의견에 알려주십시오!
    php

    로 크로스 플랫폼 데스크탑 앱을 개발하는 데 자주 묻는 질문 (FAQ) 데스크탑 애플리케이션 개발에 PHP를 사용하면 어떤 이점이 있습니까?

    PHP는 주로 웹 개발에 주로 사용되는 다재다능한 스크립팅 언어입니다. 그러나 수많은 이점으로 인해 데스크탑 애플리케이션 개발에도 사용할 수 있습니다. 첫째, PHP는 크로스 플랫폼이므로 Windows, Linux 및 MacOS와 같은 다양한 운영 체제에서 실행될 수 있습니다. 따라서 모든 플랫폼에서 실행할 수있는 데스크탑 응용 프로그램을 개발하는 데 이상적입니다. 둘째, PHP에는 많은 개발자 커뮤니티가 있으므로 문제가 발생할 때 쉽게 리소스를 찾고 도움을 줄 수 있습니다. 마지막으로, PHP는 배우고 사용하기 쉽기 때문에 데스크탑 애플리케이션 개발에서 초보자에게 좋은 선택입니다.

    복잡한 데스크탑 애플리케이션을 개발하는 데 PHP를 사용할 수 있습니까?

    예, PHP를 사용할 수 있습니다. 복잡한 데스크탑 애플리케이션을 개발합니다. PHP는 전통적으로 웹 개발에 사용되지만 수년에 걸쳐 발전해 왔으며 이제는 복잡한 데스크탑 응용 프로그램의 개발을 허용하는 기능이 포함되어 있습니다. 여기에는 객체 지향 프로그래밍, 예외 처리 및 네임 스페이스가 포함됩니다. 또한 복잡한 데스크탑 애플리케이션을 구축하는 데 도움이되는 PHP 데스크탑 및 PHP-GTK와 같은 몇 가지 PHP 프레임 워크와 도구가 있습니다.

    PHP 데스크탑은 어떻게 작동합니까? PHP 데스크톱은 허용하는 도구입니다. PHP를 사용하여 크로스 플랫폼 데스크탑 응용 프로그램을 개발할 수 있습니다. 웹 서버, PHP 통역사, 브라우저 및 JavaScript 엔진을 단일 패키지에 포함시킵니다. 즉, PHP를 사용하여 응용 프로그램을 작성할 수 있으며 독립형 데스크탑 응용 프로그램으로 실행됩니다. PHP 데스크탑은 모든 백엔드 프로세스를 처리하므로 서버 설정 또는 PHP 환경 구성에 대해 걱정할 필요가 없습니다.

    PHP-GTK 란 무엇이며 데스크톱 응용 프로그램 개발에 어떻게 사용할 수 있습니까? 한 번 PHP 데스크탑 응용 프로그램을 개발했으며 다른 데스크탑 응용 프로그램과 마찬가지로 배포 할 수 있습니다. PHP 데스크탑과 같은 도구를 사용하는 경우 응용 프로그램이 단일 실행 파일로 포장됩니다. 이 파일은 사용자가 PHP를 설치하거나 웹 서버를 설정할 필요없이 모든 컴퓨터에서 배포 및 실행할 수 있습니다. PHP 데스크탑 응용 프로그램으로 시스템 리소스에 액세스 할 수 있습니까?

    예, PHP 데스크탑 응용 프로그램은 시스템 리소스에 액세스 할 수 있습니다. PHP에는 파일 시스템, 네트워크 및 기타 시스템 리소스와 상호 작용할 수있는 몇 가지 내장 기능이 있습니다. 그러나 시스템 리소스에 액세스하는 것은 보안 위험을 초래할 수 있으므로 응용 프로그램을 개발할 때 보안 모범 사례를 따르는 것이 중요합니다.

    데스크탑 애플리케이션 개발에 PHP를 사용하는 데 따른 제한 사항은 무엇입니까?

    PHP는 데스크탑 응용 프로그램 개발에 사용될 수 있지만 몇 가지 제한 사항이 있습니다. PHP는 C 또는 Java와 같은 컴파일 된 언어만큼 빠르지 않으므로 고성능이 필요한 응용 프로그램에는 적합하지 않을 수 있습니다. 또한 PHP는 데스크탑 애플리케이션 개발을 위해 설계되지 않았으므로 다른 데스크탑 애플리케이션 개발 언어에서 공통적 인 기능이 부족합니다. 그러나 PHP 데스크탑 및 PHP-GTK와 같은 도구는 이러한 제한 사항 중 일부를 극복하는 데 도움이 될 수 있습니다.

    데스크탑 애플리케이션 개발에 기존 PHP 코드를 사용할 수 있습니까? 데스크탑 응용 프로그램 개발. PHP 웹 응용 프로그램이있는 경우 PHP 데스크탑과 같은 도구를 사용하여 데스크탑 응용 프로그램으로 변환 할 수 있습니다. 신청서를 처음부터 다시 작성할 필요가 없으므로 많은 시간과 노력을 절약 할 수 있습니다.

    PHP 데스크톱 응용 프로그램을 디버깅하려면 어떻게해야합니까?

    PHP 데스크탑 애플리케이션 디버깅 PHP 웹 응용 프로그램 디버깅과 유사합니다. PHP의 내장 오류보고 기능을 사용하여 오류를 표시 할 수 있습니다. 또한 XDEBUG와 같은 PHP 디버거를 사용하여 코드를 통해 버그를 찾을 수 있습니다. 일부 PHP 데스크탑 개발 도구는 디버깅 기능을 제공합니다.

    PHP 데스크톱 응용 프로그램과 함께 데이터베이스를 사용할 수 있습니까?

    예, PHP 데스크톱 응용 프로그램과 함께 데이터베이스를 사용할 수 있습니다. PHP는 MySQL, PostgreSQL 및 SQLite를 포함한 광범위한 데이터베이스를 지원합니다. PHP의 내장 데이터베이스 기능 또는 PDO와 같은 데이터베이스 추상화 계층을 사용하여 데이터베이스와 상호 작용할 수 있습니다. 이를 통해 PHP 웹 응용 프로그램과 마찬가지로 데이터를 저장하고 검색 할 수 있습니다.

위 내용은 PHP를 사용하여 크로스 플랫폼 데스크탑 앱을 개발하는 3 가지 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿