如果一个字符串或另一个字符串等于第三个字符串

时间:2012-11-28 00:58:16

标签: php string compare

我一直绞尽脑汁,无处可去。我可能错过了一些非常简单的东西,但我真正需要的是。

如果设置了字符串1或2,则与字符串3进行比较,提供字符串3不为空。

if($_SESSION['code'] || $_GET['id'] <> $_POST['code'] && isset($_POST['code']))

5 个答案:

答案 0 :(得分:1)

我不确定我是否遵循,但你的逻辑似乎表明:

if(isset($string3)){
    if(isset($string1)){
         strcmp($string1,$string3);
    }elseif(isset($string2)){
         strcmp($string2,$string3);
    }
}

答案 1 :(得分:0)

if(isset($string3) && ((isset($string1) && $string1 == $string3) || (isset($string2) && $string2 == $string3)))

这样的事情会起作用。首先看看isset $ string3。然后一个包装或运算符单独检查isset $ string1或2,如果它们等于字符串3。

答案 2 :(得分:0)

if( ($a = $_SESSION['code'] ? $_SESSION['code'] : $_GET['id'])
 && isset($_POST['code']) && $a == $_POST['code']) {

如果您希望$_GET['id']在设置两者时覆盖$_SESSION['code']

if( ($a = $_GET['id'] ? $_GET['id'] : $_SESSION['code'])
 && isset($_POST['code']) && $a == $_POST['code']) {

更正确:

if( (isset($_SESSION['code']) || isset($_GET['id']))
 && ($a = isset($_GET['id']) ? $_GET['id'] : $_SESSION['code'])
 && isset($_POST['code']) && $a == $_POST['code']) {

答案 3 :(得分:0)

if((!empty($_POST['code']) || !empty($_SESSION['code'])) && $_GET['id']<>$_POST['code']){

答案 4 :(得分:0)

这可能是

if(!empty($_SESSION['code']) && !empty($_GET['id']) && !empty($_POST['code'])
    ($_SESSION['code'] == $_POST['code'] || $_GET['id'] == $_POST['code']))

这意味着必须设置所有变量并具有值,然后比较$ _SESSION ['code']或$ _GET ['id']是否等于$ _POST ['code']