PHP:如何修复此代码才能正常工作?

时间:2017-05-18 09:36:04

标签: php php-5.3

请考虑以下代码:

$str1 = 'yahoo';
$str2 = 'google';
if (strpos($str1,$str2)) {
    echo "\"" . $str1 . "\" contains \"" . $str2 . "\"";
} else {
    echo "\"" . $str1 . "\" does not contain \"" . $str2 . "\"";
}

输出将是:

“yahoo”不包含“google”,为什么?如何修复此代码才能正常工作?

试图理解这个link

的第一个问题

1 个答案:

答案 0 :(得分:1)

哦,你说的是错误的例子。

如果你有言语&#34; yababababa&#34;和#34; yaba&#34;这不一样。 Strpos在字符串中返回子字符串的位置,因此如果子字符串在父字的开头处开始,则返回0,在简单条件Error: Cannot find module 'gulp-autoprefixer' at Function.Module._resolveFilename (module.js:469:15) at Function.Module._load (module.js:417:25) at Module.require (module.js:497:17) at require (internal/module.js:20:19) at Object.<anonymous> (C:\LOBOS\FDD.WAP\gulpfile.js:5:20) at Module._compile (module.js:570:32) at Object.Module._extensions..js (module.js:579:10) at Module.load (module.js:487:32) at tryModuleLoad (module.js:446:12) at Function.Module._load (module.js:438:3) Press any key to continue . . . 中表示错误,并且它表示没有&#34; yaba&#34;在&#34; yababababa&#34;。

你还必须检查来自strpos的返回值的类型 - 它必须是布尔值false / true。

if (strpos($str1,$str2)