我如何比较if else语句。在mysql查询中我可以使用LIKE %
语句
我想比较字符串结果与PHP。
即:Pro Tan 3mins,Pro Tan 6mins,Pro Tan 9mins
在mysql中:
$db->query("SELECT * FROM treat WHERE tanning LIKE 'Pro Tan%'");
在php中:
if($tanning == 'Pro Tan') :
echo 'xxx';
else :
echo 'zzz';
endif
// output zzz
答案 0 :(得分:3)
您可以使用各种不同的比较功能,具体取决于您想要进行比较的复杂程度。要专门查找以“Pro Tan”开头的字符串,您可以执行以下操作:
if (strpos($tanning, 'Pro Tan') === 0)
echo 'xxx';
请注意三重===
,因为如果strpos
返回false
,则与返回0
完全相同。
答案 1 :(得分:2)
假设结果以值开头,您可以使用strncmp
。
$foo = 'Pro Tan 6mins';
if (strncmp($foo,'Pro Tan', 7) === 0)
echo 'match';
对于不区分大小写的情况,您也可以使用strncasecmp
。
答案 2 :(得分:1)
您正在寻找strstr()
function in PHP,它允许您搜索字符串中的字符串。
if(strstr($tanning, 'Pro Tan')):
echo 'xxx';
else :
echo 'zzz';
endif;
答案 3 :(得分:0)
if(preg_match("/^Pro Tan/",$foo)) {....}
给出的其他答案也可以使用,但使用preg_match()
的正则表达式更灵活,并且可以继续使用更复杂的匹配。
(有些人会说正则表达式很慢,但在这种情况下,因为它只是匹配一个锚定到开头的直字符串,所以这是一个非常有效的查询)