トップ «前の日記(2011-08-22(Mon)) 最新 次の日記(2011-08-24(Wed))» 編集

屑俺日記

僕の備忘録(PC、UN*X、ネットワーク関連が中心)なんです。
自分の書いたところは適当(な時とか)に書き換えますので御了承を。


2011-08-23(Tue) たぶん暑いはず

違いがあまりよく分からない

一年近く前の記事と似ているような気もするが、まず、Squeeze。

$ uname -m
i686
 
$ php --vesion
PHP 5.3.3-7+squeeze3 with Suhosin-Patch (cli) (built: Jun 28 2011 13:13:26) 
Copyright (c) 1997-2009 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2010 Zend Technologies
    with Suhosin v0.9.32.1, Copyright (c) 2007-2010, by SektionEins GmbH
 
$ echo '<?php print 99999999999999 . "\n" ?>' | php
99999999999999
$ echo '<?php print 99999999999999 + 1 . "\n" ?>' | php
1.0E+14

2**46 と 2**47 の間に、何かがリミットをかけているように見える。
なんとなく切りが悪いというか、中途半端というか。 次いでLFS。

$ uname -m
x86_64
 
$ php --version
PHP 5.3.6 (cli) (built: Aug  3 2011 11:56:43)
Copyright (c) 1997-2011 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2011 Zend Technologies
 
$ echo '<?php print 9223372036854775807 . "\n" ?>' | php
9223372036854775807
$ echo '<?php print 9223372036854775807 + 1 . "\n" ?>' | php
9.2233720368548E+18

2**63 - 1 まで整数になった。
こちらは、x86_64のSqueezeでも同様。

ちょっと試行錯誤

<pre>と</pre>の間のphpのタグをvimで置換しようとして 何度かあれこれ。

:%s/'</'\&lt;/
:%s/>'/\&gt;'/

ちゃらんぽらんに

$ echo '<?php print 3 and 7 ; print "\n" ?>' | php
3
$ echo '<?php print (3 and 7) ; print "\n" ?>' | php
1

前者は、3 を評価して、それを返す(andの後ろが何であっても同様)。
後者は、えーと、論理積の評価結果が真偽値判定される。らしい (1か無かのどちらかになった)。


リンクはご自由にどうぞ。でもURLや内容が変った場合はあしからず。

index.htmlは ここから。