すべてのプロダクト
Search
ドキュメントセンター

Tablestore:Tablestore SDK for PHP の使用時に「チェックサムの不一致」エラーメッセージが返された場合はどうすればよいですか?

最終更新日:Apr 02, 2025

Windows で Tablestore SDK for PHP を使用するときに「チェックサムの不一致」エラーメッセージが返された場合は、64 ビット PHP 7 以降を使用していることを確認してください。最適なパフォーマンスを得るには、PHP 7 を使用することをお勧めします。

問題の説明

Windows で PHP 5.6 を使用して Tablestore SDK for PHP を使用すると、次のエラーメッセージが返されます。

Fatal error: Uncaught exception 'AliyunOTSOTSClientException' with message 'Checksum mismatch. expected:120,actual:-48'

考えられる原因

Tablestore は 64 ビット整数を使用します。32 ビット PHP では、String 型のみを使用して 64 ビット整数値を表すことができます。そのため、Tablestore は 32 ビット PHP をサポートしていません。Windows では、PHP 7 より前の PHP バージョンは実際には 64 ビットではありません。

解決策

Windows で Tablestore SDK for PHP を使用するときは、64 ビット PHP 7 以降を使用していることを確認してください。最適なパフォーマンスを得るには、PHP 7 を使用することをお勧めします。

phpinfo() を使用して、PHP 構成情報で アーキテクチャ の値を確認できます。この方法で、PHP バージョンが 64 ビット整数をサポートしているかどうかを確認できます。

  • アーキテクチャ の値が X86 の場合、現在の PHP バージョンは 32 ビット整数のみをサポートしています。PHP バージョンを 64 ビット PHP 7 以降にアップグレードする必要があります。

  • アーキテクチャ の値が X64 の場合、現在の PHP バージョンは 64 ビット整数をサポートしており、要件を満たすことができます。