Php 你能解释一下为什么会发生这种情况吗?
你能帮我理解这个代码吗Php 你能解释一下为什么会发生这种情况吗?,php,Php,你能帮我理解这个代码吗 $turl = get_bloginfo('home'); if ( $lang_current == "en" OR "ru" ) { $location = str_replace ($turl,$turl."/".$lang_current,$location); } return $location; 我不明白为什么,即使$lang\u current==ka,为什么我仍然激活str\u replace 我希望这个代码str_repla
$turl = get_bloginfo('home');
if ( $lang_current == "en" OR "ru" ) {
$location = str_replace ($turl,$turl."/".$lang_current,$location);
}
return $location;
我不明白为什么,即使$lang\u current==ka,为什么我仍然激活str\u replace
我希望这个代码str_replace只在语言为en或ru时才起作用,如果使用任何其他语言,我只需要它返回$location。。。但事实并非如此!这让我发疯,因为我不理解它。ru总是正确的。。。你需要把
if ( $lang_current == "en" OR $lang_current == "ru" ) {
或:
如是真的。。。你需要把
if ( $lang_current == "en" OR $lang_current == "ru" ) {
或:
字符串ru将计算为1 true,因为您没有将字符串与任何内容进行比较。基本上,您正在执行以下操作:
if ( ($lang_current == "en") OR ("ru") ) {
您需要比较OR操作数两侧的$lang_current:
if ( $lang_current == "en" OR $lang_current == "ru" ) {
字符串ru将计算为1 true,因为您没有将字符串与任何内容进行比较。基本上,您正在执行以下操作:
if ( ($lang_current == "en") OR ("ru") ) {
您需要比较OR操作数两侧的$lang_current:
if ( $lang_current == "en" OR $lang_current == "ru" ) {
使用$lang\u current==en或$lang\u current==ru使用$lang\u current==en或$lang\u current==ru