比较整数和字符串PHP

时间:2014-07-24 13:04:09

标签: php if-statement

需要通过POST捕获两个变量。

如果它们是不同的整数,则保存$ mensalidade = 4和整数以及任何其他状态保存$ mensalidade = 8.

我试试这个但是不行......

if (is_int($_POST['linha_ida']) != is_int($_POST['linha_volta'])) {

   $mensalidade= $_POST['mensalidade']=4;

} else  {

   $mensalidade= $_POST['mensalidade']=8;
}

打破了一点头,现在它完美了! 感谢所有

代码看起来像这样

if($linha_ida === $linha_volta || preg_match( '/[A-Z]/' , $linha_volta )|| preg_match( '/[A-Z]/' , $linha_ida )){
    $mensalidade= $_POST['mensalidade']=8;
    }  else{
    $mensalidade= $_POST['mensalidade']=4;
}

2 个答案:

答案 0 :(得分:1)

只需使用(int)解析器将字符串转换为整数。

if ((int)$_POST['linha_ida']) != (int)($_POST['linha_volta']) && is_int($_POST['linha_ida']) && is_int($_POST['linha_volta']) {

    $mensalidade= $_POST['mensalidade']=4;
} else  {
    $mensalidade= $_POST['mensalidade']=8;
}

取自caCtus的问题评论

  

仙人掌:   如果参数是整数,则is_int()返回true或false。如果将is_int($ iamaninteger)与is_int($ iamanintegertoo)进行比较,则比较true和true,而不是变量'值。

答案 1 :(得分:0)

if (is_int($_POST['linha_ida']) && is_int($_POST['linha_volta']) && $_POST['linha_volta'] !=  $_POST['linha_ida']) {
   $mensalidade= $_POST['mensalidade']=4;
} else  {
    $mensalidade= $_POST['mensalidade']=8;
}