AWSのPHPとは?PHPを利用するメリットを解説


AWS PHP
AWSとはAmazon Web Servicesのことで、AWS SDK for PHPを使用してアプリケーションをAWSクラウドで開発できます。
利用料金は使った分だけを支払う従量課金制です。
AWSとは?
AWSとはAmazonから提供されているクラウドコンピューティングサービスのことです。
クラウドコンピューティングとはインターネット経由でコンピューティング、データベース、ストレージ、アプリケーションをオンデマンドで利用することができるサービスの総称です。利用料金は実際に使った分だけの支払いのみといった従量課金が一般的です。
AWSではPHPが使用できる
AWSクラウドではPHPアプリケーションを開発するために必要なすべてのツール、ドキュメント、およびサンプルコードがあります。
AWS SDK for PHPライブラリ、コードサンプル、ドキュメントを使用して、ソフトウェアを構築できます。コードを設計し構築して、テスト実行やデバックも可能です。
PHPとは?
PHPは、”PHP:Hypertext Preprocessor”の略です。オープンソースのスクリプト言語です。
Webアプリケーションの開発に適しており、HTMLに埋め込むことができます。多くのコマンドを記述する代わりに、PHPのこの例では、次のように出力を行うコードを埋め込むことができます。
"Hi, I'm a PHP Script!"
開始および終了タグ
<?php と ?>
このように囲われていて、これにより”PHPモード”の切り替えを行います。
PHPは初心者にとってわかりやすく、すぐに始められます。数時間で簡単なスクリプトが書けるようになるでしょう。プロフェッショナルのプログラマーに対しては進んだ機能を多く提供しています。
AWS PHPの導入方法について
ここでは、AWS SDK for PHPの基本的な使用パターンについて説明します。
「SDKをダウンロードして、インストールする方法」を解説していきます。インストールする前に、PHPにとって必要なものは次の3つです。
・PHP本体
・Webサーバー
・Webブラウザ
Webスペースはホスティング会社から借りることもできます。この場合は自分でセットアップする必要はなく、PHPのコードを書いて、レンタルしたサーバーにアップロードして、その結果をブラウザで確認するだけです。
AWS SDK for PHP バージョン3をインストールする前提条件
AWS SDK for PHPを使用するには、以下の要件と推奨事項がサポートされていることを確認します。
PHP拡張機能AWS SDK for PHPを有効にした、PHPバージョン5.5.0以降を使用しなければなりません。プライベートAmazon CloudWatch URLsに署名する必要がある場合は、OpenSSLPHP拡張子も必要です。
AWS SDK for PHPインストーラをダウンロードする
AWS SDK for PHPバージョン3は、次の方法でインストールできます。
Composerを介して依存関係として
SDKのパッケージ済みpharとして
SDKのZIPファイルとして
AWS SDK for PHPバージョン3をインストールする際に、PHPバージョン5.5以降のものを使用していることを確認しましょう。
.pharメソッドと.zipメソッドを介してSDKをインストールするには、Multibyte String PHP拡張機能を個別にインストールして有効にする必要があります。
Composerをインストールする
Composerがまだプロジェクトにない場合は、Composerをダウンロードしてインストールします。
Windowsの場合、Composer-setup.exeをダウンロードして実行します。Linuxの場合、Composerのダウンロードページにあるコマンドラインインストールに従います。
Composerのインストール方法、自動でダウンロードする方法、および依存関係定義と他のベストプラクティスに従う方法の詳細などは、getcomposer.orgを参照してみてください。
Composerを介して依存関係としてAWS SDK for PHPを追加する
Composer PHARは、好きな場所におくことができます。
Composerがシステムに全体的に適用されてインストール済みの場合、PATHの一部であるディリクトリに配置すれば、グローバルにアクセスできます。次の操作を実行し、そのプロジェクトに依存させてAWS SDK for PHPをインストールします。
composer require aws/aws-sdk-php
それ以外の場合は、このComposerへコマンドを入力し、プロジェクトに依存させてAWS SDK for PHPの最新バージョンをインストールします。
php -d memory_limit=-1 composer.phar require aws/aws-sdk-php
phpスクリプトに自動ローダーを追加する
PHPスクリプトでAWS SDK for PHPを利用するには、次のとおりスクリプトに自動ローダーをインクルードします。
<?php
require '/path/to/vendor/autoload.php';
?>
パッケージ済みpharを使用したインストール
AWS SDK for PHPの各リリースには、SDKを実行するために必要なクラスと依存関係がすべて含まれているパッケージ済みのphar(PHPアーカイブ)が付属しています。
また、そのPharファイルでは、AWS SDK for PHP用のクラスの自動ローダーとそのすべての依存関係が自動的に登録されます。
パッケージ済みのpharをダウンロードして、スクリプトでインクルードすることができます。
<?php
require '/path/to/aws.phar';
?>
ZIPファイルを使用したインストール
AWS SDK for PHPにはSDKを実行するために必要なクラスと依存関係が含まれているZIPファイルが付属しています。
SDKをインストールするにはzipファイルをダウンロードし、プロジェクト内の任意の場所に展開します。次に、スクリプトで次のように自動ローダーをインクルードします。
コードをSDKでインクルードする
ここでは、AWS SDK for PHPの基本的な使用パターンについて説明します。
どのような手法でSDKをインストールしたかにかかわらず、1つのrequireステートメントだけでSDKをインクルードできます。
インストール手法に最適なPHPコードについては次を参照してください。/path/to/は、使用しているシステムでの実際のパスに置き換えます。
ここでは、Composerのインストール方法を想定し、例を挙げます。別のインストール方法を使用している場合、このセクションを参照にし、適切なrequireコードを見つけてみましょう。
インストールの手法 | requireステートメント |
---|---|
Composerの使用 | require ‘/path/to/vendor/autoload.php’; |
pharの使用 | require ‘/path/to/aws.phar’; |
ZIPの使用 | require ‘/path/to/aws-autoloader.php’; |
AWS SDKを利用してみよう!
SDKを使用してAWSのサービスとやり取りするには、クライアントオブジェクトをインスタンス化します。
サービスのAPIオペレーションと1対1で対応するメソッドがあります。特定のオペレーションを実行するには、それに対応するメソッドを呼び出します。そのメソッドでは、成功するとResultオブジェクトが返され、失敗すると例外がスローされます。
クライアントの作成
クライアントのコンストラクタにオプションの連想配列を渡すことによって、クライアントを作成できます。
インポート
require 'vender/autoload.php';
use AwsS3\S3\S3Client;
use Aws\Exception\AwsException;
サンプルコード
//Create a S3Client
$s3 = new Aws\S3\S3Client([
'version' => 'latest',
'region' => 'us-east-2'
]);
これはSDKが環境変数(AWS_ACCESS_KEY_IDおよびAWS_SCRET_ACCESS_KEY)、ホームディレクトリにあるAWS認証情報のINIファイル、AWS Identity and Access Management(IAM)のインスタンスプロファイルの認証情報、認証情報プロバイダのいずれかから認証情報を検出するためです。
Amazon Elastic Compute Cloudについて
ここでは、Amazon Elastic Compute Cloud、AWSEc2の運用に関するパラメータと結果を説明します。
AwsEc2¥Ec2Clientオブジェクトを使用した運用を呼び出す方法を示します。
コマンドや特定のAPI操作を作成するには次を使用します。
マジックメソッド(例)
($client->commandName(/**parameter*/)
クライアント
$\client->getCommand
Amazon EC2インスタンスへ接続するには
Amazon Elastic Compute Cloud(Amazon EC2)は、クラウド内で仮想サーバーのホスティングを提供するウェブサービスです。
サンプルコードを実行する前に「AWS SDK for PHPバージョン3の認証情報」の説明に従ってAWS認証情報を設定します。Amazon Web Servicesにリクエストするには、AWSアクセスキー(認証情報)をAWS SDK for PHPに提供します。
セキュリティの観点からAWSアクセスにはルートアカウントではなくIAMユーザーを使用することを勧めます。『IAM User Guide』の「IAMベストプラクティス」を参照してください。
EC2のインスタンスを起動してみよう!
インスタンスを記述する。
インポート
require 'vendor\autoload.php';
use Aws\Ec2\Ec2Client;
サンプルコード
$ec2Client = new Aws\Ec2\Ec2Client([
'region' => 'us-west-2',
'version' => '2016-11-15',
'profile' =>'default'
]);
$result = $e2Client->describeInstances();
var_dump($result);
モニタリングを有効また無効にする
インポート
require 'vendor/autoload.php';
use Aws\Ec2\Ec2Client;
サンプルコード
$ec2Client = new Aws\Ec2\Ec2Client([
'region' => 'us-west-2',
'version => '2016-11-15',
'profile' => 'default'
]);
$instanceIds = array('instanceID1', 'InstanceID2');
monitorInstance = 'ON';
if ($monitorInstance =='ON') {
$result = $ec2Client - >monitorInstances(array(
InstanceIDs' => $instanceIds
));
}else {
$result =$ec2Client->unmonitorInstances(array(
'InstanceIds' => $'InstanceIds' =>$instanceIds
));
}
var_dump($result);
インスタンスを停止または起動する。
インポート
require 'vender/aoutload.php'; use Aws\Ec2\Ec2Client;
サンプルコード
$ec2Client = new Aws\Ec2\Ec2Client([
'region' => 'us-west-2',
'version'=>'2016-11-15',
'profile => 'default'
]);
$action ='START';
$instanceIds =array('InstanceID1', 'InstanceID2');
if ($action == 'START'){
$reault =$ec2Client ->startInstances(array(
'InstanceIds' => $instanceIds
));
}
var_dump($result);
インスタンスを再起動する。
サンプルコード
$ec2Client = new Aws\Ec2\Ec2Client([
'region' => 'us-west-2',
'version' => 2016-11-15',
'profile' => 'default'
]);
$instanceIds = array('InstanceID1', 'InstanceID2');
$result = $ec2Client-> rebootInstances(array(
));
var_dump($result);
AWS PHPを利用してマネジメントコンソールで一元管理してみよう!
AWS マネジメントコンソールには、AWSリソースの作成と一元管理に使用できるウェブページのユーザーインターフェースが用意されています。
AWSマネジメントコンソールを使用する前にAWSアカウントにサインインする必要があります。アカウント作成は無料です。まずは無料サービスを試してみてください。
この記事の監修者・著者

- AWSパートナー/Salesforce認定コンサルティングパートナー 認定企業
-
ITエンジニア派遣サービス事業を行っています。AWSやSalesforceなど専門領域に特化したITエンジニアが4,715名在籍し、常時100名以上のITエンジニアの即日派遣が可能です。
・2021年:AWS Japan Certification Award 2020 ライジングスター of the Year 受賞
・2022年3月:人材サービス型 AWSパートナー認定
・AWS認定資格保有者数1,154名(2024年6月現在)
・Salesforce認定コンサルティングパートナー
・Salesforce認定資格者276名在籍(2024年5月現在)
・LPIC+CCNA 認定資格者:472 名(2024年6月時点)
最新の投稿
- 2024-12-27営業インタビュー情報共有の活性化の中心に。SP企画部の新たな取り組み
- 2024-07-01営業インタビュー最短で当日にご提案可能。 OPE営業の対応が早い3つの理由
- 2024-07-01営業インタビュー研修見学ツアーが高評価!「お客様のOPEに対する期待を高め、継続に貢献できればと思います。」
- 2024-07-01営業インタビュー信頼関係を構築し、エンジニアの長期就業へ

- 求人・転職サイトや自社採用サイトを使っているが、自社に合ったITエンジニアが応募してこない…
- すぐに採用したいが、応募がぜんぜん集まらない
オープンアップITエンジニアをご検討ください!
当社のITエンジニア派遣サービスは
- 派遣スピードが速い!(最短即日)
- 4,500名のエンジニアから貴社にマッチした人材を派遣
- 正社員雇用も可能
こんな特長があり、貴社の事業やプロジェクトに合った最適なITエンジニアを派遣可能です。
まずは下記ボタンから無料でご相談ください。