選取您的 Cookie 偏好設定

我們使用提供自身網站和服務所需的基本 Cookie 和類似工具。我們使用效能 Cookie 收集匿名統計資料,以便了解客戶如何使用我們的網站並進行改進。基本 Cookie 無法停用,但可以按一下「自訂」或「拒絕」以拒絕效能 Cookie。

如果您同意,AWS 與經核准的第三方也會使用 Cookie 提供實用的網站功能、記住您的偏好設定,並顯示相關內容,包括相關廣告。若要接受或拒絕所有非必要 Cookie,請按一下「接受」或「拒絕」。若要進行更詳細的選擇,請按一下「自訂」。

的 PHP 教學課程 AWS Cloud9

焦點模式
的 PHP 教學課程 AWS Cloud9 - AWS Cloud9

AWS Cloud9 不再提供給新客戶。的現有客戶 AWS Cloud9 可以繼續正常使用服務。進一步了解

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

AWS Cloud9 不再提供給新客戶。的現有客戶 AWS Cloud9 可以繼續正常使用服務。進一步了解

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

本教學課程可讓您在 AWS Cloud9 開發環境中執行一些 PHP 指令碼。

遵循本教學課程並建立此範例,可能會對您的帳戶 AWS 收取費用。其中包括 Amazon EC2 和 Amazon S3 這類服務可能的費用。如需詳細資訊,請參閱 Amazon EC2 定價Amazon S3 定價

先決條件

在您使用此範例前,請務必確認您的設定符合下列要求:

  • 您必須擁有現有的 AWS Cloud9 EC2 開發環境。本範例假設您已具備 EC2 環境,且該環境已連線到執行 Amazon Linux 或 Ubuntu Server 的 Amazon EC2 執行個體。如果您有不同類型的環境或作業系統,您可能需要依照此範例的說明來設定相關工具。如需詳細資訊,請參閱在 中建立環境 AWS Cloud9

  • 您已開啟現有環境的 AWS Cloud9 IDE。當您開啟環境時,請在 Web 瀏覽器中 AWS Cloud9 開啟該環境的 IDE。如需詳細資訊,請參閱在 中開啟環境 AWS Cloud9

步驟 1:安裝必要工具

在此步驟中,您將安裝 PHP,這是執行此範例的必要工具。

注意

下列程序只會安裝 PHP。若要安裝 Apache Web 伺服器和 MySQL 資料庫等相關工具,請參閱《Amazon Amazon EC2使用者指南》中的教學課程:在 Amazon Linux 上安裝 LAMP Web 伺服器

  1. 在 IDE AWS Cloud9 的終端機工作階段中,執行 php --version命令以確認是否已安裝 PHP。(若要啟動新終端機工作階段,請在選單列上,選擇 Window (視窗)、New Terminal (新增終端機)。如果成功,輸出會包含 PHP 版本號碼。如果已安裝 PHP,請直接跳到步驟 2:新增程式碼

  2. 執行 yum update (適用於 Amazon Linux) 或 apt update (適用於 Ubuntu Server) 命令,協助確保已安裝最新安全性更新和錯誤修正。

    針對 Amazon Linux 2 和 Amazon Linux:

    sudo yum -y update

    針對 Ubuntu Server:

    sudo apt update
  3. 執行 install 命令,以安裝 PHP。

    針對 Amazon Linux 2:

    sudo amazon-linux-extras install -y php7.2

    針對 Amazon Linux:

    sudo yum -y install php72
    注意

    您可以使用下列命令來檢視您的 Amazon Linux 版本。

    cat /etc/system-release

    針對 Ubuntu Server:

    sudo apt install -y php php-xml

    如需詳細資訊,請參閱 PHP 網站上的 Installation and Configuration

步驟 2:新增程式碼

在 AWS Cloud9 IDE 中,建立具有此內容的檔案,並儲存名稱為 的檔案hello.php。(若要建立檔案,請在選單列上,選擇 File (檔案)、New File (新增檔案)。若要儲存檔案,請選擇 File (檔案)、Save (儲存),為 Filename (檔案名稱) 輸入 hello.php,然後選擇 Save (儲存)。)

<?php print('Hello, World!'); print("\nThe sum of 2 and 3 is 5."); $sum = (int)$argv[1] + (int)$argv[2]; print("\nThe sum of $argv[1] and $argv[2] is $sum."); ?>
注意

上述程式碼未依賴任何外部檔案。不過,如果您曾經在 檔案中包含或需要其他 PHP 檔案,而且 AWS Cloud9 想要在輸入時使用這些檔案來完成程式碼,請在偏好設定中開啟專案、PHP Support、啟用 PHP 程式碼完成設定,然後將這些檔案的路徑新增至專案、PHP Support、PHP 完成包含路徑設定。(若要檢視及變更偏好設定,請從選單列選擇 AWS Cloud9、Preferences (偏好設定))。

步驟 3:執行程式碼

  1. 在 AWS Cloud9 IDE 的選單列中,選擇執行執行組態新執行組態

  2. [New] - Idle ([新增] - 閒置) 標籤上,選擇 Runner: Auto (執行器: 自動),然後選擇 PHP (cli)

  3. Command (命令) 中輸入 hello.php 5 9。在程式碼中,5 代表 $argv[1],而 9 代表 $argv[2]。($argv[0] 代表檔案名稱 (hello.php))。

  4. 選擇 Run (執行) 按鈕,然後對照您的輸出。

    Hello, World! The sum of 2 and 3 is 5. The sum of 5 and 9 is 14.
在 IDE 中執行 PHP AWS Cloud9 程式碼的輸出

步驟 4:安裝和設定 適用於 PHP 的 AWS SDK

您可以增強此範例,以使用 適用於 PHP 的 AWS SDK 建立 Amazon S3 儲存貯體、列出可用的儲存貯體,然後刪除您剛建立的儲存貯體。

在此步驟中,您會安裝並設定 適用於 PHP 的 AWS SDK,這可讓您透過 PHP 程式碼與 Amazon S3 等 AWS 服務互動。在安裝 之前 適用於 PHP 的 AWS SDK,您應該先安裝 Composer。安裝 之後 適用於 PHP 的 AWS SDK,您必須在環境中設定登入資料管理。 適用於 PHP 的 AWS SDK 需要這些登入資料才能與 AWS 服務互動。

安裝 Composer

搭配無訊息 () 執行 curl -s 命令,並顯示錯誤 (-S) 選項,以透過管線將 Composer 安裝程式放入 PHP 封存檔 (PHAR) (依慣例命名為 composer.phar)。

curl -sS https://getcomposer.org/installer | php

安裝 適用於 PHP 的 AWS SDK

對於 Ubuntu Server,安裝 Composer 安裝 適用於 PHP 的 AWS SDK時所需的額外套件。

sudo apt install -y php-xml php-curl

如為 Amazon Linux 或 Ubuntu Server,請使用 php 命令執行 Composer 安裝程式來安裝 適用於 PHP 的 AWS SDK。

php composer.phar require aws/aws-sdk-php

此命令會在環境中建立數個資料夾和檔案。您會使用的主要檔案是 autoload.php,它位在環境的 vendor 資料夾中。

注意

安裝之後,Composer 可能建議您安裝額外的依存項目。您可以使用以下命令來執行此動作,並指定要安裝的依存項目清單。例如,以下命令會指示 Composer 安裝以下列出的依存項目。

php composer.phar require psr/log ext-curl doctrine/cache aws/aws-php-sns-message-validator

如需詳細資訊,請參閱 適用於 PHP 的 AWS SDK 開發人員指南中的安裝

在環境中設定憑證管理

每次使用 適用於 PHP 的 AWS SDK 呼叫 AWS 服務時,您必須隨呼叫提供一組登入資料。這些登入資料會判斷 是否 適用於 PHP 的 AWS SDK 具有進行該呼叫的適當許可。如果登入資料未涵蓋適當許可,呼叫即會失敗。

在此步驟中,您會在環境中存放您的憑證。若要這麼做,請遵循 AWS 服務 從 中的環境呼叫 AWS Cloud9 中的指示,然後返回本主題。

如需詳細資訊,請參閱 適用於 PHP 的 AWS SDK 開發人員指南基本用量的「建立用戶端」一節。

步驟 5:新增 AWS SDK 程式碼

在此步驟中,您會再新增其他程式碼,這次是要與 Amazon S3 互動,藉此建立儲存貯體、列出可用的儲存貯體,然後刪除您剛建立的儲存貯體。您稍後將執行此程式碼。

在 AWS Cloud9 IDE 中,建立具有此內容的檔案,並儲存名稱為 的檔案s3.php

<?php require './vendor/autoload.php'; if ($argc < 4) { exit("Usage: php s3.php <the time zone> <the bucket name> <the AWS Region to use>\n" . "Example: php s3.php America/Los_Angeles my-test-bucket us-east-2"); } $timeZone = $argv[1]; $bucketName = $argv[2]; $region = $argv[3]; date_default_timezone_set($timeZone); $s3 = new Aws\S3\S3Client([ 'region' => $region, 'version' => '2006-03-01' ]); # Lists all of your available buckets in this AWS Region. function listMyBuckets($s3) { print("\nMy buckets now are:\n"); $promise = $s3->listBucketsAsync(); $result = $promise->wait(); foreach ($result['Buckets'] as $bucket) { print("\n"); print($bucket['Name']); } } listMyBuckets($s3); # Create a new bucket. print("\n\nCreating a new bucket named '$bucketName'...\n"); try { $promise = $s3->createBucketAsync([ 'Bucket' => $bucketName, 'CreateBucketConfiguration' => [ 'LocationConstraint' => $region ] ]); $promise->wait(); } catch (Exception $e) { if ($e->getCode() == 'BucketAlreadyExists') { exit("\nCannot create the bucket. " . "A bucket with the name '$bucketName' already exists. Exiting."); } } listMyBuckets($s3); # Delete the bucket you just created. print("\n\nDeleting the bucket named '$bucketName'...\n"); $promise = $s3->deleteBucketAsync([ 'Bucket' => $bucketName ]); $promise->wait(); listMyBuckets($s3); ?>

步驟 6:執行 AWS SDK 程式碼

  1. 在 AWS Cloud9 IDE 的選單列中,選擇執行執行組態新執行組態

  2. [New] - Idle ([新增] - 閒置) 標籤上,選擇 Runner: Auto (執行器: 自動),然後選擇 PHP (cli)

  3. 針對 Command (命令),輸入 s3.php America/Los_Angeles my-test-bucket us-east-2,其中:

    • America/Los_Angeles 是您的預設時區 ID。如需其他 ID,請參閱 PHP 網站上的「支援的時區清單」。

    • my-test-bucket 是您想要建立然後刪除的儲存貯體名稱。

      注意

      Amazon S3 儲存貯體名稱必須是唯一的 AWS,而不只是您的帳戶 AWS 。

    • us-east-2 是您要建立儲存貯體 AWS 的區域 ID。其他區域的 ID 請參閱《》章節 Amazon Simple Storage Service (Amazon S3)Amazon Web Services 一般參考

  4. 選擇 Run (執行) 按鈕,然後對照您的輸出。

    My buckets now are: Creating a new bucket named 'my-test-bucket'... My buckets now are: my-test-bucket Deleting the bucket named 'my-test-bucket'... My buckets now are:

步驟 7:清除

為了避免在您完成使用此範例後持續向您的 AWS 帳戶收取費用,您應該刪除環境。如需說明,請參閱 在 中刪除環境 AWS Cloud9

針對 的 PHP Runner 問題進行故障診斷 AWS Cloud9

如果您遇到 PHP CLI 執行器的問題,您必須確保執行器已設定為 PHP,且已啟用除錯器模式。

下一個主題:

Ruby

上一個主題:

Node.js 教學課程
隱私權網站條款Cookie 偏好設定
© 2025, Amazon Web Services, Inc.或其附屬公司。保留所有權利。