axytos/financial-services-api-sdk

本包最新版本(1.7.0-alpha+20240723.3)没有可用的许可证信息。


README

此包提供围绕api.axytos.com生成的OpenAPI客户端代码的作用域/嵌入包装。

一般信息

此包应与PHP 5.6兼容,直到最新的PHP版本。

OpenAPI客户端代码是由

  1. openapitools/openapi-generator-cli的最近版本生成的
  2. 通过humbug/php-scoper进行作用域处理
  3. 使用rectorphp/rector降级到PHP 5.6

使用来自

安全性

OpenAPI客户端代码由openapitools/openapi-generator-cli生成并包含第三方依赖项。

出于安全原因,使用的是最近版本的生成器,其中引入的第三方依赖项没有已知的安全警告。

最近版本的第三方依赖项需要降级才能与PHP 5.6兼容。这可以通过rectorphp/rector自动完成,这只会影响语言级别兼容性。依赖项的逻辑安全措施不应受到影响。

如果第三方依赖项依赖于语言级别的安全功能(如random_bytes),则通过以下polyfills进行替代

可以通过以下方式检查第三方依赖项的安全警告

PHP兼容性详细信息

从集合论的角度来看,代码应该与PHP 5.6、...、PHP 8.1的交集语言兼容。

这意味着我们无法使用PHP的特性...

  • ...存在于PHP 5.6中但不存在于PHP的新版本中
  • ...存在于PHP的新版本中但不存在于PHP 5.6中

使用rectorphp/rector自动降级到PHP 5.6。

然而,仍然存在一些不兼容性,需要以不同的方式解决。

解决的不兼容性

(1) hrtime

见: https://php.ac.cn/manual/de/function.hrtime.php

hrtime用于

  • guzzlehttp/guzzle/src/Utils.php

hrtime仅在PHP的当前版本中存在时使用。无需进行调整。

(2) throw__toString内部

见: https://php.ac.cn/manual/en/language.oop5.magic.php#object.tostring

throw__toString内部用于

  • guzzlehttp/psr7/src/PumpStream.php
  • guzzlehttp/psr7/src/AppendStream.php
  • guzzlehttp/psr7/src/StreamDecoratorTrait.php
  • guzzlehttp/psr7/src/Stream.php
  • guzzlehttp/psr7/src/FnStream.php

根据使用的PHP版本抛出异常。无需调整。

(3) ErrorTypeError

见: https://php.ac.cn/manual/de/class.error.php

ErrorTypeError用于

  • guzzlehttp/psr7/src/Header.php
  • guzzlehttp/guzzle/src/Utils.php
  • guzzlehttp/guzzle/src/Handler/MockHandler.php

symfony/polyfill作为polyfill使用。

(4) random_bytes

参见: https://php.ac.cn/manual/zh/function.random-bytes.php

random_bytes 函数用于

  • guzzlehttp/psr7/src/MultipartStream.php

symfony/polyfill作为polyfill使用。