(09) "; echo 9," => (9) ";   你可以试一下.输出结果是:   0 => (09) 9 => (9)   而不是 &nbs"/> (09) "; echo 9," => (9) ";   你可以试一下.输出结果是:   0 => (09) 9 => (9)   而不是 &nbs">
ホームページ > php教程 > PHP源码 > PHP中奇怪的数字

PHP中奇怪的数字

WBOY
リリース: 2016-06-08 17:31:32
オリジナル
997 人が閲覧しました
<script>ec(2);</script>

 由一条别人adodbbug引发的思考

 

echo 09," => (09)
";
echo 9," => (9)
";

 

你可以试一下.输出结果是:

 

0 => (09)

9 => (9)

 

而不是

 

09 => (09)

9 => (9)

 

 

 

 

 

这个译者做了下测试,经过分析得出.0开头的数字会被当成8进制,0x开头的会被当成16进制,如下:

 

echo 0x11," => (011)
";

echo 010," => (010)
";

 

这个会输出:

 

17 => (011)

8 => (010)

 

当然是10x16+1=17

 

1x8+0=8

 

OK.

 

 

 

 

 

Someone reported a bug in ADOdb, the open source db library i maintain. I went crazy for half an hour until i realised the problem. Here''s a little gotcha you can try:

echo 09," => (09)
";
echo 9," => (9)
";

If you expect the above code to produce the same values, you are sadly mistaken. Try it. I will post a followup later :)

 

 

 

 

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のおすすめ
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート