teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

1

タイトル変更、試したこと追記

2018/02/17 01:05

投稿

ruuusaamarki
ruuusaamarki

スコア470

title CHANGED
@@ -1,1 +1,1 @@
1
- phpのクラス継承でのエラー
1
+ AWS sdk for phpのクラス(S3Client)を継承することは可能しょうか?
body CHANGED
@@ -95,6 +95,25 @@
95
95
  class AWSTestExtends extends Aws\S3\S3Client
96
96
  ```
97
97
 
98
+ またfactoryメソッドはsdk2でDeprecatedなので
99
+ sdk3.xのような形でインスタンスから取得するというのも試してみました。
100
+
101
+ ```
102
+ $this->s3 = parent::factory( [
103
+ 'region' => 'ap-northeast-1',
104
+ 'version' => 'latest',
105
+ 'signature_version' => 'v4'
106
+ ] );
107
+
108
+
109
+
110
+ $this->s3 = new Aws\S3\S3Client([
111
+ 'region' => 'ap-northeast-1',
112
+ 'version' => 'latest',
113
+ 'signature_version' => 'v4'
114
+ ] );
115
+ ```
116
+
98
117
  [s3clientのページ](https://docs.aws.amazon.com/aws-sdk-php/v3/api/class-Aws.S3.S3Client.html#___construct)にコンストラクタの項目もあるので見てみたのですが解決方法を見つけられていない状態です。
99
118
  おそらくオブジェクト指向の理解が浅いので継承のお作法が理解できていないのだと思いますが
100
119
  自己解決に至らずこちらに書かせていただいています。