[PHP-users 15717]switch()のcase判定
T.Miura
macosx @ miurake.net
2003年 6月 6日 (金) 11:47:03 JST
はじめて投稿いたします。
三浦@さいたまと申します。
switchのcaseで判定するときに、
配列の添え字が"0"のときの挙動が良く分からないので
投稿させていただきました。
<ソース>
<?php
$arr = array("0"=>"test0","1"=>"test1","example"=>"exam1");
foreach($arr as $key => $val){
switch($key){
case "example":
print $key." => ".$val."<br>\n";
break;
default:
print "違うよ<br>\n";
break;
}
}
?>
</ソース>
上記テストスクリプトを実行すると、
想定していた結果は
<結果>
違うよ
違うよ
example => exam1
</結果>
だったのですが、
<結果>
0 => test0
違うよ
example => exam1
</結果>
と表示されます。
これはどういう仕様なのでしょうか?
<環境>
Linux RedHat7.2
Apache 1.3.27(RPM)
PHP 4.3.1(ソースからコンパイル)
'./configure' 'i386-redhat-linux' '--prefix=/usr' '--exec-prefix=/usr'
'--bindir=/usr/bin' '--sbindir=/usr/sbin' '--sysconfdir=/etc'
'--datadir=/usr/share' '--includedir=/usr/include' '--libdir=/usr/lib'
'--libexecdir=/usr/libexec' '--localstatedir=/var' '--sharedstatedir=/usr/com'
'--mandir=/usr/share/man' '--infodir=/usr/share/info' '--prefix=/usr'
'--with-config-file-path=/etc' '--disable-debug' '--enable-pic'
'--enable-inline-optimization' '--with-bz2' '--with-db3' '--with-curl'
'--with-dom=/usr' '--with-exec-dir=/usr/bin' '--with-freetype-dir=/usr'
'--with-png-dir=/usr' '--with-gd' '--enable-gd-native-ttf' '--with-ttf'
'--with-gdbm' '--with-gettext' '--with-ncurses' '--with-gmp' '--with-iconv'
'--with-jpeg-dir=/usr' '--with-mm' '--with-openssl' '--with-png'
'--with-pspell' '--with-regex=system' '--with-xml' '--with-xmlrpc'
'--with-expat-dir=/usr' '--with-zlib' '--with-layout=GNU' '--enable-bcmath'
'--enable-debugger' '--enable-ftp' '--enable-magic-quotes'
'--enable-safe-mode' '--enable-sockets' '--enable-sysvsem' '--enable-sysvshm'
'--enable-discard-path' '--enable-track-vars' '--enable-trans-sid'
'--enable-wddx' '--without-oci8' '--with-imap=shared' '--with-imap-ssl'
'--with-kerberos=/usr/kerberos' '--with-ldap=shared'
'--with-mysql=shared,/usr' '--with-mcrypt' '--with-pgsql=shared'
'--enable-memory-limit' '--enable-shmop' '--enable-versioning'
'--enable-calendar' '--enable-dbx' '--enable-dio' '--enable-mcal'
'--enable-zend-multibyte' '--enable-mbstring' '--enable-mbregex'
'--enable-cli' '--with-apxs=/usr/sbin/apxs'
</環境>
PHP-users メーリングリストの案内