有一个字符串'S',程序是查找并打印该字符串是否是回文。如果是,请打印“是”,否则打印“否”
对于一些回文词而言,它的工作方式与思域有关,而有些则无法正常工作 代码: -
<?php
$str = "Civic";
$count = ((strlen($str)+1 ) /2);
$q = "y";
for($i = 0; $i < $count; $i++)
{
$x = 1;
$z = $str[(strlen($str-$x))];
$x = $x+1;
if($str[$i] == $z ) {
$x = $x++;
$q = "y";
} else {
$q = "n";
}
}
if($q == "n") {
echo "No";
} else {
echo "Yes";
}
?>
请给我一些关于我的代码的建议,谢谢
答案 0 :(得分:4)
另一种方法怎么样:
if($str == strrev($str)) {
echo "Yes";
} else {
echo "No";
}
或更短:
echo ($str == strrev($str)) ? "Yes" : "No";
但也许问题是区分大小写?
echo (strtolower($str) == strrev(strtolower($str))) ? "Yes" : "No";