我是PHP的新手。
我正在尝试搜索数据数组,并匹配包含部分字符串
的任何项目EX:如果用户输入“哦”,搜索会找到任何包含“哦”的项目,因此该项目可能是约翰。
到目前为止,我有这个,不匹配任何东西
if(isset($_POST['firstName'])){
for($i = 0 ; $i<count($studentInfo);$i++){
if(strpos($firstName,$studentInfo[$i][2]))
当然,一旦找到该项目,还有其他代码可以执行某些操作。我已经看过很多substr方法和STRPOS函数,我只是弄清楚如何使它与我的代码一起工作。
答案 0 :(得分:2)
编辑:仔细观察您的问题,似乎您正在搜索数组值中的匹配项。有一些类似于preg_match()的东西叫做preg_grep()。
$arrMatchingValues = preg_grep("/^findme/", $array);
看看preg_match()。使用该页面中的一些示例代码:
<?php
$subject = "abcdef";
$pattern = '/^def/';
preg_match($pattern, $subject, $matches, PREG_OFFSET_CAPTURE, 3);
print_r($matches);
?>
$subject
是您要搜索的内容。
$pattern
是您想要匹配的正则表达式模式。
答案 1 :(得分:0)
您将需要使用regular expression.在特定情况下,您应该遍历数组,并且对于每个项目,请使用preg_match(如链接文章中所详述)。任何匹配的项目都应该添加到另一个数组中,或者您可以随意使用它。