표준 composer.json 파일에서 PHP에 대한 종속 항목을 선언할 수 있습니다. 예를 들면 다음과 같습니다.
{
    "require": {
        "google/cloud": "^0.72"
    }
}
App Engine에서 모든 Linux 호환 PHP 패키지를 사용할 수 있습니다. 런타임에서는 애플리케이션 소스 디렉터리에서 composer.json 파일을 찾아 composer를 사용해 애플리케이션을 시작하기 전에 종속 항목을 설치합니다.
이 런타임에서 지원되는 PHP 버전에 대한 자세한 내용은 PHP 런타임을 참조하세요.
로컬에서 설치 및 실행
composer를 사용하여 종속 항목을 로컬에 설치합니다.
composer install
종속 항목을 현재 버전에 고정하려면 애플리케이션에 composer.lock 파일을 커밋합니다.
선택한 웹 서버를 사용하여 애플리케이션을 테스트할 수 있습니다. App Engine 가변형 환경은 프로덕션 단계에서 NGINX를 사용합니다. PHP 내장 웹 서버를 사용하여 애플리케이션을 빠르게 실행할 수 있습니다.
웹 프레임워크 설치
기본적으로 NGINX는 index.php를 통해 모든 요청을 제공하도록 구성됩니다. 프레임워크는 필수는 아니지만 권장됩니다. App Engine 가변형 환경에서 다음을 포함한 모든 웹 프레임워크를 사용할 수 있습니다.
특정 웹 프레임워크를 사용하려면 단순히 composer.json에 추가하면 됩니다.
{
    "require": {
        "symfony/symfony": " ^3.0"
    }
}
Cloud 클라이언트 라이브러리 설치
PHP용 Google Cloud 클라이언트 라이브러리는 작성해야 하는 상용구 코드를 줄여주는 Google Cloud 서비스에 액세스하기 위한 클라이언트 라이브러리입니다. 이 라이브러리는 높은 수준의 이해하기 쉬운 API 추상화를 제공합니다. PHP 관용구를 포함하고 표준 라이브러리와 잘 작동하며 코드베이스와 더 긴밀하게 통합됩니다. 이 모든 기능들을 통해 중요한 코드를 만드는 데 더 많은 시간을 투자할 수 있습니다.
- 라이브러리를 로컬로 설치합니다. - composer require google/cloud
- Google Cloud CLI를 사용하여 로컬에서 인증을 처리할 수 있습니다. 로컬 애플리케이션이 API 액세스를 위해 사용자 인증 정보를 일시적으로 사용하게 하려면 다음 명령어를 실행합니다. - gcloud auth application-default login- 인증을 자동으로 처리하기 위한 PHP용 Cloud 클라이언트 라이브러리 구성에 대한 자세한 내용은 클라이언트 라이브러리를 사용하여 Cloud 서비스에 인증을 참조하세요. 
비공개 저장소 사용
비공개 저장소에서 라이브러리를 사용하려면 다음 작업을 완료해야 합니다.
- 저장소를 구성합니다.
- composer에 비공개 저장소에 액세스할 수 있는 보안 비밀을 제공합니다.
다음 예시는 GitHub에서 비공개 저장소에 액세스하는 방법을 보여줍니다.
- 형식으로 - vcs를 사용하여- composer.json에서 저장소를 구성합니다.- "repositories": [ { "type": "vcs", "url": "https://github.com/username/private_package" } ]
- 프로젝트 루트 디렉터리에 - auth.json이름의 파일을 만듭니다.- { "github-oauth": { "github.com": "<your-github-auth-token>" } }
GitHub의 관리 UI에서 GitHub 인증 토큰을 얻을 수 있습니다.
다음은 Bitbucket의 비공개 저장소에 액세스하는 방법을 보여주는 또 다른 예시입니다.
- 형식으로 - vcs를 사용하여- composer.json에서 저장소를 구성합니다.- "repositories": [ { "type": "vcs", "url": "https://bitbucket.org/username/private_git" } ]
- 프로젝트 루트 디렉터리에 - auth.json이름의 파일을 만듭니다.- { "bitbucket-oauth": { "bitbucket.org": { "consumer-key": "<your-oauth-consumer-key>", "consumer-secret": "<your-oauth-consumer-secret>" } } }