mcg / aws-services
用于AWS服务的简单库
Requires
- php: ^7.0
- aws/aws-sdk-php: ^3.162
Requires (Dev)
- phpunit/phpunit: ^8.5
- vlucas/phpdotenv: ^5.2
This package is not auto-updated.
Last update: 2024-10-01 17:40:34 UTC
README
内容
关于
此仓库是一组用于AWS服务的库,包括以下服务:
- SES邮件
- S3存储
这些库旨在简化使用PHP 7.0及以上版本开发的应用程序的开发和功能。
要求
需要将环境变量文件(.env)添加到项目中,以访问AWS服务,因为这已在Amazon SDK文档中说明。
也可以在构建对象时定义。有关更多信息,请参阅以下链接
https://docs.aws.amazon.com/sdk-for-php/v3/developer-guide/guide_credentials.html
安装
安装时,我们使用composer命令获取
composer gme/dev-aws-services
SES(简单电子邮件服务)
使用AWSEmail类通过AMAZON的SES服务发送邮件。
为了简化通过库发送邮件,我们使用以下方式利用AMAZON的SES服务
$EmailAWS= new SESService(["myemail@server.mx"],"subject","This is a plain text","here are the html document"); //si contamos con archivo .env y la configuracion de las variabels de AWS, omitimos la siguiente linea $EmailAWS->setSesKey("AWSSESKEY")->setSesSecret("AWSSESSECRET"); $EmailAWS->send(); $response=$EmailAWS->getResponse();
使用库
对于AWS库,有以下方法和描述:
方法:__construct() : 类构造函数 - 参数 - recipients:array(): 电子邮件列表,格式为字符串(可选) - subject:string : 邮件主题(可选) - plainText:string : 邮件内容的纯文本(可选) - html_body:string : 邮件内容的HTML格式(可选) - sesKey:string : AWS SES服务密钥(可选) - sesSecret:string : AWS SES服务的秘密文本(可选)
setSender() : 指定发送通知的电子邮件(FROM:) - 参数 - sender:string : 字符串格式的电子邮件
setRecipients(): 指定电子邮件数组 - 参数: - recipients:array : 字符串格式的电子邮件数组
setSubject(): 指定要发送的邮件主题 - 参数: - subject:string : 文本格式的主题
setPlainText() : 将纯文本内容分配给消息 - 参数: - plainText:string : 文本格式的主题
setHtmlBody() : 将HTML格式分配给文本 - 参数: - htmlBody : 消息的HTML内容
setSesKey() : 分配AWS SES服务的密钥 - 参数: - sesKey:string : 字符串格式的AWS SES服务密钥
setSesSecret() : 分配AWS服务的秘密文本 - 参数: - sesSecret:string : 字符串格式的秘密文本
getResponse() : 获取通知发送的响应
getRecipients() : 获取分配给要发送通知的电子邮件
getSubject() : 获取分配的主题
getPlainText() : 获取分配的文本内容
getHtmlBody() : 获取分配的消息HTML内容
getSesKey() : 获取分配的AWS SES服务的密钥
getSesSecret() : 以字符串格式获取 AWS SES 服务的密文
S3 服务
使用 S3Services 类上传文件到 S3 服务
S3 密钥必须位于目录中或在 env 文件中
$S3Service= new S3Service("proveedores","us-west-2",EObtainCredentialsFrom::INI_FILE); $result=$S3Service->uploadFile("filesample.txt", __DIR__."\\testsamples","New Folder","samplefile.txt","text/html"); print($result);
使用库
对于AWS库,有以下方法和描述:
方法: __construct() : 类构造函数 - 参数 - bucket : 桶的配置 - region : 区域配置 - getCrefentialsFrom : EObtainCredentialsFrom 枚举用于配置从 INI 文件或 .env 文件获取凭证
setCredentials() : 配置 AWS SE 文件 INI 的凭证路径 - 参数 getCrefentialsFrom : INI 文件的路径
uploadFile() : 将文件上传到 S3 服务的函数 - 参数 sourceFile : 要上传的文件名 sourceFolder : 文件路径 destinationFolder : 文件上传到的路径 fileName : S3 保存时文件的名称 type : 文件 mime 类型
saveFileContent() : 将文件内容保存到 S3 服务的函数 - 参数 filename : S3 中生成的文件名 content : 文件内容 folderttoSave : 保存的文件夹 type : 文件 mime 类型
deleteFile() : 从 S3 服务删除文件的函数 - 参数 file : 要删除的文件名. folder : 要删除的文件路径.
fileExist() : 检查 S3 中是否存在文件 - 参数 fileName : 要查询的文件路径和名称
getObjectUrl() : 获取 S3 中文件的 URL - 参数 fileName : 要查询的文件路径和名称
getS3Client() : 获取 S3 客户端
renameFile() : 重命名 S3 服务中的文件 - 参数 oldName : 要更改的文件名 newName : 新文件名
copyFile() : 在 S3 服务之间复制文件的函数 - 参数:} sourceName : 要复制的文件名和路径 targetBucket : 目标 bucket targetName : 要创建的文件名和路径 contentType : 文件 mime 类型 deleteSourceFile : 是否删除源文件
listObjectsBuckets(): 列出 bucket 内容的函数。 - 参数 prefix : S3 bucket 的前缀和配置 bucket : 要获取的选定的 bucket
getFileObject() : 获取 S3 中的文件对象 - 参数: fileName : 文件路径和名称。
getFileContent() : 获取存储在 S3 中的文件的文件内容 - 参数 fileName : 文件路径和名称。
saveFileByStreamWraper() : 保存 S3 服务的文件的函数 - 参数 filename : 文件名 path : 要保存的文件路径 content : 要保存的文件内容
setBucket() : 配置要使用的 bucket - 参数 bucket : 要选择的 bucket 名称
setProfileIniTagCredentials() : 定义从 INI 文件获取凭证的标签 - 参数
profile : 从 ini 文件中查询以获取凭证的标签
setCredentialsIniFilePath() : 设置获取凭证的 INI 文件的路径。 - 参数 path : S3 服务的 INI 文件位置路径
setRegion() : 配置 S3 服务的区域。
getBucket() : 获取库配置的 bucket
getCredentialsIniFilePath() : 获取配置的 AWS 密钥文件路径。
getProfileIniTagCredentials() : 获取用于 INI 文件的标签。