简单的if else或preg_match表达式

时间:2014-02-05 21:18:45

标签: php html regex preg-match

我发布了一个example.php表单,当发布到perl脚本example.pl时,它会响应这个

<!-- comments disabled --> 

或者

<!-- comments enabled -->

以上回复存储在$commentstatus变量

中的php get请求中

响应可能是多行或单行!

如何使用php preg_match构建表达式或验证响应,或者对php中的if else条件进行正常验证?

4 个答案:

答案 0 :(得分:1)

您可以在strpos()的字符串中检查是否存在字符串。

所以实际的代码是:

<?php
if (strpos($commentstatus, "<!-- comments disabled -->") !== false)
{
}
elseif(strpos($commentstatus, "<!-- comments disabled -->") !== false)
{
}

答案 1 :(得分:1)

function commentsEnabled($str){
    preg_match_all('/^.*?<!--\s*comments\s+(en|dis)abled\s*-->.*$/m', $str, $m);
    return !count($m[1]) ? null : array_pop($m[1]) == 'en';
}

demo

enter image description here

enlarge image

答案 2 :(得分:1)

致@lbu为在Op

下评论的SIMPLEST解决方案

这非常有效并且是最简单的

$content= trim($commentstatus);

if ($content == "<!--commentsdisabled-->"){

 print "Dear User Comments are disabled for your access";

}else if($content == "<!--commentsenabled-->"){

print "Dear User Comment added to blog post entry";

}else{

 print "You are Banned for Spamming";

}

答案 3 :(得分:-1)

不确定你是不是只是问这个?

if (preg_match('@enabled@', $commentstatus)){
    // Enabled code
}else{
    // Everything else code
}

请了解如何阅读PHP文档: http://us1.php.net/preg_match