我的问题:
require_once '/includes/aws-sdk-1.5.2/sdk.class.php';
我的环境:
我有一个非常标准的 PHP 站点,用于__autoload()
获取我需要的任何类。但是,我现在需要包含 SDK 以将文件发送到 S3,但只是要求该库似乎会超出整个应用程序的范围,因此随后的任何代码都会被破坏。
例子:
// Save to S3
require_once '/var/www/html/system/aws-sdk-1.5.2/sdk.class.php';
$s3 = new AmazonS3();
if( ! $s3->if_bucket_exists(S3_BUCKET) )
throw new Exception('S3 bucket does not exist.');
$response = $s3->create_object(S3_BUCKET, $temp_file['s_unique_name'], array(
'fileUpload' => $_FILES['my_file']['tmp_name'],
'acl' => $s3::ACL_PUBLIC
));
// Save file
$photo = new vehicle_photo();
$photo->i_vehicle = $i_vehicle;
$photo->s_file = $temp_file['s_url'];
$photo->s_label = $_FILES['my_file']['name'];
$photo->save();
因此,// Save to S3
启用代码段后vehicle_photo
,除了在此之后可能使用的所有其他类之外,将无法再找到以下类。如果我禁用它,一切正常。
这里发生了什么事?