【发布时间】:2015-03-26 09:27:59
【问题描述】:
我发现我不想搜索数组键并打印它们的值,我希望搜索一个部分填充的条目,即,如果我搜索“haw”,它将返回带有 Hawthorn 的每一行,轴等在第一列。
这是我目前用于搜索的内容,如果我为这些值提供全名,它就可以正常工作(尽管我意识到它可能丑陋且效率低下)。但是,我希望能够搜索“geoff”并找到所有 geoffrey 的,然后显示他们所在行的相关部分。
我已经尝试了各种方法,将字符串转换为数组和数组转换为基于从我正在尝试的各种函数中获得的错误的字符串,但我无法解决它。这是搜索中的一个常见功能,我真的认为我错过了一些重要的东西。我是新手,我需要帮助!
最近我尝试使用“In_array”,但这也无济于事。如果有人可以排序,谢谢!
$sitename = $_GET['sitename'];
$upsitename = strtolower($sitename);
$area = $_GET['area'];
$uparea = strtolower($area);
$postcode = $_GET['postcode'];
$uppostcode = strtolower($postcode);
$file = fopen("houselist.csv","r");
ini_set('auto_detect_line_endings',TRUE);
while ( ! feof ( $file ) ) {
$show = fgetcsv($file);
if(($upretailer != NULL)and( $upsitename == NULL)and($uparea == NULL)) {
if($show[0] == $upretailer) {
echo "<table class='output'>
<tr><td>$show[0] </td><td>$show[1]</td><td>$show[2]</td><td>$show[5]</td><td>$show[6]</td><td>$show[8]</td>
</table>";
}
}
if(($upretailer != NULL) and ($upsitename != NULL)and($uparea == NULL)) {
if(($show[0] == $upretailer) and ($show[2] == $upsitename)) {
echo "<table class='output'>
<tr><td>$show[0] </td><td>$show[1]</td><td>$show[2]</td><td>$show[5]</td><td>$show[6]</td><td>$show[8]</td>
</table>";
}
}
if(($upretailer != NULL) and ($upsitename != NULL)and($uparea != NULL)) {
if(($show[0] == $upretailer) and ($show[2] == $upsitename) and ($show[5] == $uparea)) {
echo "<table class='output'>
<tr><td>$show[0] </td><td>$show[1]</td><td>$show[2]</td><td>$show[5]</td><td>$show[6]</td><td>$show[8]</td>
</table>";
}
}
if(($upretailer == NULL) and ($upsitename != NULL)and($uparea != NULL)) {
if(($show[2] == $upsitename) and ($show[5] == $uparea)) {
echo "<table class='output'>
<tr><td>$show[0] </td><td>$show[1]</td><td>$show[2]</td><td>$show[5]</td><td>$show[6]</td><td>$show[8]</td>
</table>";
}
}
if(($upretailer == NULL) and ($upsitename == NULL)and($uparea != NULL)) {
if($show[5] == $uparea) {
echo "<table class='output'>
<tr><td>$show[0] </td><td>$show[1]</td><td>$show[2]</td><td>$show[5]</td><td>$show[6]</td><td>$show[8]</td>
</table>";
}
}
if(($upretailer == NULL) and ($upsitename != NULL)and($uparea == NULL)) {
if($show[2] == $upsitename) {
echo "<table class='output'>
<tr><td>$show[0] </td><td>$show[1]</td><td>$show[2]</td><td>$show[5]</td><td>$show[6]</td><td>$show[8]</td>
</table>";
}
}
if(($upretailer != NULL) and ($upsitename == NULL)and($uparea != NULL)) {
if(($show[0] == $u)and($show[5] == $uparea)){
echo "<table class='output'>
<tr><td>$show[0] </td><td>$show[1]</td><td>$show[2]</td><td>$show[5]</td><td>$show[6]</td><td>$show[8]</td>
</table>";
}
}
}
fclose($file);
?>
【问题讨论】:
标签: php arrays search multidimensional-array substring