avlima / php-sigep
从 stavarengo/php-sigep 包派生而来 - 与巴西邮政 Web Service 的集成。生成标签、查询价格和期限、打印标签和 PLP 等。
Requires
- php: >=5.4
- setasign/fpdi: 1.6.1
- stavarengo/php-sigep-fpdf: dev-master
This package is auto-updated.
Last update: 2024-09-13 06:08:48 UTC
README
帮助项目成长。请发送代码源或项目文档的 pull request。
PHP SIGEP - 巴西邮政
- 在此处下载最新稳定版本:https://github.com/stavarengo/php-sigep/tags
巴西邮政 SIGEP Web Service 的实现。
在我们的页面上查看在线演示、示例和文档。.
与巴西邮政 Web Service 集成。查询价格和期限、打印标签和 PLP 等。此 API 可以
- 计算订单的价格和配送期限。
- 获取订单的追踪数据。
- 检查两个地址之间是否允许某种服务类型(Sedex、PAC 等)。
- 生成并发送预清单(PLP)的 XML 到巴西邮政。
- 生成新的邮递标签编号。
- 创建和/或验证标签的校验码(通过 Web Service 或不通过)。
- 以 PDF 格式生成 PLP 报告。
- 以 PDF 格式生成邮递标签。
- 以 PDF 格式生成每种服务类型的印章(每种服务类型的标志)。
- 在投递后获取 PLP 数据 [由 Sara 处理]
- [新功能] 暂停邮递(也称为互动投递)
- [新功能] 代理列表(用于点击和取件)
- [新功能] 为点击和取件生成邮递标签的 PDF 格式
要求
- PHP >= 5.4.0
- 如果您需要打印标签和报告,请也下载 FPDF 1.7 www.fpdf.org。
不要忘记在尝试打印报告之前配置 FPDF 以自动加载。
使用 Composer 安装(推荐)
- 我们不通过标签控制版本,但是 master 分支只有在代码稳定时才会更新。因此,最新稳定版本总是 master 分支。
将以下行添加到您的 composer.json
文件中: "stavarengo/php-sigep": "dev-master"
"stavarengo/php-sigep-fpdf": "dev-master"
然后通过命令行执行 composer update
。
手动安装
-
我们不通过标签控制版本,但是 master 分支只有在代码稳定时才会更新。因此,最新稳定版本总是 master 分支。
-
下载最新版本。
-
要使用 php-sigep 的类,您只需要加载 "php-sigep/src/PhpSigep/Bootstrap.php" 文件。这会将加载器注册。
常见问题
系统访问授权拒绝
在将此项目用于生产之前,您需要向巴西邮政的商业代表申请 Web Service 的授权和密码。
PHP 5.3 的问题
此问题已在此处报告:stavarengo#35 一些用户在 PHP 版本问题下遇到与巴西邮政 WebService 的连接和认证问题。要解决这个问题,您可以或使用更新的 PHP 版本(>=5.4)或从您的服务器下载 WSDL 并使用它来连接。如果您选择下载 WSDL,请按照以下步骤操作:
- 将此文件保存在您的本地环境 https://apps.correios.com.br/SigepMasterJPA/AtendeClienteService/AtendeCliente?wsdl
- 修改您的生产环境配置以使用您下载的文件。以下是一个示例。
$config = new \PhpSigep\Config(); $config->setEnv(\PhpSigep\Config::ENV_PRODUCTION); $config->setWsdlAtendeCliente('CAMINHO-DO-SEU-ARQUIVO-LOCAL'); \PhpSigep\Bootstrap::start($config);
注意:此操作在本地服务器(如Wamp、Xammp等)上不会生效。
功能
缓存
PhpSigep的缓存组件灵感来源于Zend Framework的缓存组件。
默认情况下,PhpSigep的缓存是禁用的。
此缓存存储了一些邮政Web服务的响应,这些响应可以随后重用。除了提高请求响应速度外,还可以防止用户在邮政服务器不稳定(相信我:它经常不稳定)时无法继续操作。
要启用缓存,在创建PhpSigep配置时使用“cacheOptions”键。例如:php new \PhpSigep\Config( array( 'cacheOptions' => array( 'storageOptions' => array( 'enabled' => true, 'ttl' => 60*60*24*7,// 一周 ), ), ... ), );
在storageOptions
数组中,您可以使用PhpSigep\Cache\Storage\Adapter\AdapterOptions
类的任何属性名称。
贡献
要运行测试套件,通过命令行执行./vendor/bin/phpunit
。
- 创建分支
- 为功能创建分支(
git checkout -b nova-funcionalidade
) - 提交您的修改(
git commit -am '添加新功能'
) - 将分支推送到远程(
git push origin nova-funcionalidade
) - 创建新的Pull Request