echo($menuVal['icon']);
/* if($menuVal['icon'] !== 'fa-dashboard' ){
$menuHTML .= '<span class="ico fa fa-fw fa-chevron-right"></span>';
}*/
$cont=strcmp($menuVal["icon"],"fa-dashboard");
echo($cont);
if((strcmp($menuVal["icon"],"fa-dashboard")) != 0 ){
$menuHTML .= '<span class="ico fa fa-fw fa-chevron-right"></span>';
}
在这段代码中我试图使用php打印图标如果它的值不等于fa-dashboard,我认为如果输入相等,strcmp
将产生输出零,但在此代码中strcmp是当两个字符串相等时产生243的输出,当放入243而不是0时产生if
条件。
我添加了下面获得的输出,我还检查了$menuVal['icon']
的值以检查它打印的内容,
fa-dashboard 243fa-globe 768fa-puzzle-piece 3072fa-pie-chart
3072fa-gears 768fa-anchor -768
此代码中是否有任何错误?我该如何解决? 任何帮助都会受到赞赏.......... !!!
答案 0 :(得分:1)
检查整个字符串是否等于fa-dashboard。
如果fa-dashboard始终是第一项,您可以使用strncmp仅匹配前n个字符。
int strncmp ( string $str1 , string $str2 , int $len )
此函数类似于strcmp(),区别在于您可以指定比较中使用的每个字符串的字符数(上限)。