flavioamello / php-sigep
与邮政Web服务的集成。生成标签,查询价格和期限,打印标签和PLP等。
Requires
- php: >=5.4
- setasign/fpdi: 1.6.1
- stavarengo/php-sigep-fpdf: dev-master
This package is not auto-updated.
Last update: 2024-09-25 22:08:31 UTC
README
帮助项目成长。提交代码或项目文档的pull request。
PHP SIGEP - 邮政
- 在此处下载最新稳定版本:https://github.com/stavarengo/php-sigep/tags
实施邮政SIGEP Web服务。
在我们的页面上查看在线演示、示例和文档。.
与邮政Web服务的集成。查询价格和期限,打印标签和PLP等。此API可以
- 计算订单的价格和配送期限。
- 获取订单的追踪数据。
- 检查服务类型(如Sedex、PAC等)是否允许在两个地址之间。
- 生成并发送预清单寄递(PLP)的XML给邮政。
- 生成新的标签号码。
- 创建和/或验证标签的校验码(通过Web服务或非Web服务)的有效性。
- 以PDF格式生成PLP报告。
- 以PDF格式生成寄递标签。
- 以PDF格式生成每种服务类型的印章(每种服务类型的徽标)。
- 获取寄递后的PLP数据[由Sara处理]
要求
- 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"文件。这将注册loader。
常见问题
PHP 5.3的问题
此问题已在以下处报告:stavarengo#35 一些用户在生产环境中由于PHP版本问题遇到了与邮政Web服务连接和认证的问题。为了解决这个问题,您可以或使用更新的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 的缓存是禁用的。
此缓存存储了一些邮局 WebService 的响应,可以在以后重复使用。除了提高请求响应速度外,还可以防止用户在邮局服务器不稳定时(相信我:它经常不稳定)无法继续操作。
要启用缓存,在创建 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