Upgrade to Pro — share decks privately, control downloads, hide ads and more …

半年かけてPHP5.6からPHP7.4までバージョンアップした苦労と工夫 PHPカンファレンス福岡2024

半年かけてPHP5.6からPHP7.4までバージョンアップした苦労と工夫 PHPカンファレンス福岡2024


Keisuke Yamauchi

June 22, 2024

More Decks by Keisuke Yamauchi

Other Decks in Technology


  1. バージョン EC 管理画面 開始 2023/08 2023/09 7.0 2023/09 2023/09 7.1

    2023/11 2023/10 7.2 2023/12 2024/01 7.3 2024/02 2024/01 7.4 2024/03 2024/03 8.0 2024/06 2024/06
  2. 5.6 → 7.0 対応一覧 ・Notice: Undefined offset ・Notice: Undefined index

    ・Notice: Undefined variable ・Warning: Missing argument ・set_magic_quotes_runtimeの廃止
  3. 7.0 → 7.1 対応一覧 Deprecated: Non-static method Hoge::fuga() should not

    be called statically Fatal error: Too few arguments to function This test did not perform any assertions rand() と srand() が、それぞれ mt_rand() と mt_srand() のエイ リアスとなる
  4. 7.1 → 7.2 対応一覧 Warning: count(): Parameter must be an

    array or an object that implements Countable Fatal error: must be compatible with PHPUnit\Framework\TestCase::setUp(): void
  5. 7.3 → 7.4 対応一覧 Notice: Trying to access array offset

    on value of type null[bool] Notice: Trying to get property of non-object runkit削除 qdmail対応
  6. 7.4 → 8.0 対応一覧 Warning: Trying to access array offset

    on value of type null[bool] Fatal error: Uncaught Error: Non-static method A::aa() cannot be called statically Fatal error: Uncaught TypeError: count(): Argument #1 ($value) must be of type Countable|array, null given Fatal error: Uncaught ValueError: Unknown format specifier "v" Fatal error: Array and string offset access syntax with curly braces is no longer supported 古いコンストラクタ対応 lcobucci/jwt対応 amazon-pay対応
  7. amazon-pay対応 OLD amzn/amazon-pay-sdk-php NEW amzn/amazon-pay-api-sdk-php ← こっちで起きる Fatal error: Declaration

    of AmazonPay\Client::setLogger(?Psr\Log\LoggerInterface $logger = null) must be compatible with Psr\Log\LoggerAwareInterface::setLogger(Psr\Log\LoggerInterface $logger): void