2

Windows7 を実行しているラップトップを使用しています。デスクトップで [コンピューター] を右クリックしてプロパティを選択すると、[システム タイプ] が [64 ビット オペレーティング システム] であることがわかります。PHP_INT_MAX をウォッチとして PHPStorm で実行すると、 2147483647 どうして?これは、PHPStorm が 32 ビットとして実行されていること、または PHP が 32 ビット モードで実行されていることを示していますか? php --version を実行すると、PHP 5.4.7 を実行していることがわかります。

私の実際の問題は、$result = $var << 5を実行しようとしていて、このコード行に到達する前に $var が 318 497 757 だったことです。この行の後の $result は 1601993632 ですが、10191928224 である必要があります (計算が正しければ)

何が問題で、どこで問題が発生していますか? 何が間違っているのか、どこが悪いのかわかりません。ありがとう。

4

1 に答える 1

3

デフォルトでは、 windows.php.net Web サイトから公開されているすべての PHP ビルドは32 ビットです。あなたの説明から、あなたは32ビットのものを持っているように聞こえます。

64 ビット PHP が必要な場合は、64 ビット PHP ビルドを見つけて (または自分でコンパイルして) ​​使用する必要があります。


使用している xx ビット PHP を確認する方法

関数の出力を確認しphpinfo()ます (またはphp -iコマンド ラインからのみ)。一番上のアーキテクチャ行を探します。64 ビットには がありx64、32 ビットには がありx86ます。

于 2013-01-08T17:32:33.147 に答える