Php 如何比较相关字符串?

Php 如何比较相关字符串?,php,arrays,Php,Arrays,因此,我的程序有一个问题,我在一个名为ArrName的数组中搜索一个名称,然后如果他/她存在于数组中,则显示英俊或美丽,但如果名称不在数组中,则如果我搜索的字符串不在数组中,则程序将显示相关字符串。我很难解决这个问题,请帮忙。下面是我的一个例子 样本输出#1: 姓名:鲍勃、约翰、查理、布拉沃、阿尔法、雷蒙德、肯尼斯、罗斯、罗斯、詹姆斯 搜索:鲍勃 结果:鲍勃存在,鲍勃很帅 样本输出#2: 姓名:鲍勃、约翰、查理、布拉沃、阿尔法、雷蒙德、肯尼斯、罗斯、罗斯、詹姆斯 搜索:收到 结果:未找到罗杰。你

因此,我的程序有一个问题,我在一个名为ArrName的数组中搜索一个名称,然后如果他/她存在于数组中,则显示英俊或美丽,但如果名称不在数组中,则如果我搜索的字符串不在数组中,则程序将显示相关字符串。我很难解决这个问题,请帮忙。下面是我的一个例子

样本输出#1:

姓名:鲍勃、约翰、查理、布拉沃、阿尔法、雷蒙德、肯尼斯、罗斯、罗斯、詹姆斯

搜索:鲍勃

结果:鲍勃存在,鲍勃很帅

样本输出#2:

姓名:鲍勃、约翰、查理、布拉沃、阿尔法、雷蒙德、肯尼斯、罗斯、罗斯、詹姆斯

搜索:收到

结果:未找到罗杰。你是说:

罗斯

罗塞尔

以下是我目前的代码:

    <html>
<body>
    <?php
        $arrNumbers = array('jonel','jon','john','rosel','rosil','rose','ramon','ramin','ramoon','kenneth','keneth','kennet','joy','juy');
        $arrboys = array('jonel','jon','john','ramon','ramin','ramoon','kenneth','keneth','kennet');
        $arrgirls = array('rosel','rosil','rose','joy','juy');
        $strsearch = 'rosel';
        $count = 0;
        $badd = 0;
        $gadd = 0;

        foreach($arrNumbers as $value)// checks if name exists
        {
            if($value == $strsearch)
            {
                $count = $count + 1;

            }
            else
            {
                $count = $count + 0;

            }
        }

        if($count > 0)// if name exists, checks if the name is from a boy or a girl
        {
            //boys
            foreach($arrboys as $value)// checks if the name is from the boys
            {
                if($value == $strsearch)
                {
                    $badd = $badd + 1;
                }
                else
                {
                    $badd = $badd + 0;
                }
            }
            if($badd > 0)
            {
                echo $strsearch.' is handsome';
            }

            // girls
            foreach($arrgirls as $value)// checks if the name is from the girls
            {
                if($value == $strsearch)
                {
                    $gadd = $gadd + 1;
                }
                else
                {
                    $gadd = $gadd + 0;
                }
            }
            if($gadd > 0)
            {
                echo $strsearch.' is beautiful';
            }
        }
        else// if the name does not exists
        {
          // this is the part where i dont know what to do.
          // this part suppose to display all the names related to the name that is 
          // being searched.
            echo 'did you mean';
        }
    ?>
</body>


为什么要检查$arrNumbers数组中的出现情况,因为$arrboys和$arrboyers是$arrNumbers的子字符串

使用下面的代码

<?php
        $arrNumbers = array('jonel','jon','john','rosel','rosil','rose','ramon','ramin','ramoon','kenneth','keneth','kennet','joy','juy');
        $arrboys = array('jonel','jon','john','ramon','ramin','ramoon','kenneth','keneth','kennet');
        $arrgirls = array('rosel','rosil','rose','joy','juy');
        $strsearch = 'rosel';
        $flag = '';
        for($i=0;$i<sizeof($arrboys);$i++)
        {
            //echo $arrboys[$i].' ';
            if($strsearch == $arrboys[$i]);
            $flag = 'boy';
        }

        for($i=0;$i<sizeof($arrgirls);$i++)
        {
            //echo $arrboys[$i].' ';
            if($strsearch == $arrgirls[$i]);
            $flag = 'girl';
        }
        if($flag == 'boy')
        {
            echo $strsearch.' exist, '. $strsearch.' is handsome';
        }
        if($flag == 'girl')
        {
            echo $strsearch.' exist, '. $strsearch.' is beautiful';
        }
        else
        {
            echo  $strsearch.' not found. did you mean:';
        }
        ?>

查看in\u array()和类似的\u text(),或者如果您想弄脏手,请查看或。。。