wbuy / php-sigep
与巴西邮政Web服务的集成。生成标签,查询价格和期限,打印标签和PLP等。
Requires
- php: >=5.4
- ext-mbstring: *
- ext-soap: *
- stavarengo/php-sigep-fpdf: dev-master
- vria/nodiacritic: ^0.1.2
Requires (Dev)
- phpstan/phpstan: ^0.12.81
- phpunit/phpunit: ~4
This package is auto-updated.
Last update: 2024-09-12 00:35:21 UTC
README
帮助项目成长。发送代码源或项目文档的pull request。
PHP SIGEP - 巴西邮政
巴西邮政SIGEP Web服务的实现。
在我们的页面上查看在线演示、示例和文档。.
与巴西邮政Web服务的集成。查询价格和期限,打印标签和PLP等。此API可以
- 计算订单的交付价格和期限。
- 获取订单的跟踪数据。
- 检查两个地址之间是否允许某种服务类型(速递、PAC等)。
- 生成并发送预清单邮递标签(PLP)到巴西邮政。
- 生成新的邮递标签号码。
- 创建和/或验证标签校验位的有效性(通过Web服务或不通过)。
- 生成PLP报告的PDF格式。
- 生成邮递标签的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服务的授权和密码。
我在使用测试环境时遇到问题
如果您在尝试使用测试环境时收到以下消息,则表示巴西邮政的Web服务暂时不可用。创建 issue 没有意义,最好的做法是等待或尝试联系巴西邮政的技术支持。
错误消息:解析WSDL:无法从 'https://apphom.correios.com.br/SigepMasterJPA/AtendeClienteService/AtendeCliente?wsdl' 加载外部实体 'https://apphom.correios.com.br/SigepMasterJPA/AtendeClienteService/AtendeCliente?wsd'
PHP 5.3相关的问题
这个问题在以下链接中报告:stavarengo#35 一些用户在生产和环境中遇到与邮政Web服务连接和认证问题,原因是PHP版本。要解决这个问题,您可以选择使用较新版本的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服务的响应,这些响应可以在以后重复使用。除了提高请求响应速度外,还可以防止用户在邮政服务器不稳定时受阻(相信我:它经常不稳定)。
要启用缓存,请使用"cacheOptions"键创建PhpSigep配置。例如: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 'Adiciona nova funcionalidade') - 将分支推送到远程(
git push origin nova-funcionalidade) - 创建新的Pull Request