在php

时间:2017-06-28 17:17:46

标签: php

实际上我已经在php中使用简单数组和搜索名称从数组制作了一个小程序,我的程序如下:

$n = array("Akki","Amesh","Akit","Baa","aaakk");

$hint = "";

$find = "ak";

if ($find !== "") {

    $find = strtolower($find);

    $lwn = strlen($find);

    foreach($n as $gt){     
        if(stristr($find, substr($gt,0,$lwn))){
            if($hint === ''){                   
                $hint .= $gt;
            }else{          
                $hint .= ",$gt";
            }
            }
    }
}
echo ($hint == "") ? "NNN" : $hint ;

我的查询如何检查$ hint得到的数据是单一& double和如何从数组

获取名称后添加逗号

就像我使用word ak搜索名字一样,我得到了两个名字Akki和Akit。 它的完美,但我想知道如何在该名称之间添加逗号。

检查这个条件是什么:($ hint ==='')

告诉我是否有人知道我的疑问。

4 个答案:

答案 0 :(得分:1)

只是为了提供更简单的解决方案:

$hint = implode(", ", preg_grep("/^$find/i", $n));
  • 为您的数组提供以下内容并返回匹配项:
    • 查看^不区分大小写$find
    • 的字符串i的开头
  • 加入逗号,

答案 1 :(得分:0)

要添加逗号,请更改其他条件:

else{          
                $hint .= ","."$gt";
            }

答案 2 :(得分:0)

你的if条件:if($hint === ''){也将检查$hint的值和数据类型。如果数据类型匹配,那么它将检查值。

因此,在您的情况下,它将检查string数据类型,然后与$hint的值进行比较,即空白字符串。

同样如answer中所述,您应该使用implode函数。

答案 3 :(得分:0)

此代码的作用:

        if($hint === ''){                   
            $hint .= $gt;
        }else{          
            $hint .= ",$gt";
        }

查看$ hint是否为空(这将是前面的if条件第一次为真,因为它在开始时被初始化为空)。仅当$ hint中已存在值时,才用于添加逗号。 ===运算符只是比较值和类型,而不是使用==时的值比较。这里真的没有必要。

这会回答你的问题吗?

编辑:关于逗号,据我所知,目前添加了逗号。代码有改进的潜力,但有效。