Php 如何检查输入数据中是否出现字符串

Php 如何检查输入数据中是否出现字符串,php,string,Php,String,我想检查用户输入数据中是否出现特定字符串。 我该怎么做呢。 这是我的密码: <?php $data = $_POST["data"]; if (strcmp("123",$data)) echo "string matches"; else if (strcmp("234",$data)) echo "string 2 matches"; else echo"string does not match";

我想检查用户输入数据中是否出现特定字符串。 我该怎么做呢。 这是我的密码:

    <?php
    $data = $_POST["data"];

    if (strcmp("123",$data))
       echo "string matches";
    else if (strcmp("234",$data))
       echo "string 2 matches";
    else 
       echo"string does not match";
?>

试试这个:

<?php
$data = $_POST["data"];

if (strcmp("123",$data) === 0)
   echo "string matches";
else if (strcmp("234",$data))
   echo "string 2 matches";
else 
   echo"string does not match";
?>

试试这个

    <?php
        //$data = isset($_POST["data"])?$_POST["data"]:'';
        $data = "12356789";
        if (strpos($data, "123")!== false){
           echo "string matches";
        }
        else if (strpos($data, "234")!== false){
           echo "string 2 matches";
        } else {
           echo"string does not match";
        }
?>

如果要检查
$\u POST['data']
是否包含要搜索的字符串,请执行以下操作:

<?php
    $data = $_POST["data"];

    if (strpos($data, "123") !== false)
       echo "data contains 123";
    else if (strpos($data, "234") !== false)
       echo "data contains 234";
    else 
       echo "data does not contain either";

这里的参数是相反的。它是strpos($haystack,$needle,…)
。它不起作用。一直说字符串不匹配@sanjeev Shetty只是说数据也不包含@WillIt?什么是
var_转储($_POST[“data”])显示?@RahulSharma您需要填充$\u POST数据,您需要填写表格将数据发送到页面。威尔,这是正确答案+1。特别是澄清了
false
。太棒了,谢谢Rahul和@Martin,很高兴我能帮上忙:)@Will呃,这个答案使用的是
strcmp
,而不是strpos。啊,对不起,疏忽了!另一个答案确实改变了方向,我猜我错了:)不过,我仍然相信他想“搜索”而不是“比较”。
<?php
    //...

    if ($data == "123")
       echo "data is equal 123";