我导入了一个CSV来填充多维数组。 $arrCSV
。
<?php
$foundOneMatchingRow = FALSE;
foreach ($arrCSV as $row) {
if (strpos($row['5'], $val) !== FALSE && strlen($row['5']) > 4) {
$foundOneMatchingRow = TRUE;
echo $row['6'];
}
}
?>
以上代码从$val = $_GET['menu'];
的值输出完成后购买网址。
我想根据$row['6'];
中的字词进行搜索。
将在页面上进行搜索,将搜索结果传递给网址。
这看起来像http://example.com/search.php?val=dogs
因此代码会查找与$row [6]
我希望我已经清楚了。任何gudiance都会受到欢迎。我现在正在测试一切。
谢谢
答案 0 :(得分:1)
if (strpos($row['6'], $val) !== FALSE)
包含“dog”(如果$row['6']
的值为“dog”), $val
将评估为 true 。也就是说,如果$row['6']
中的字符串是“bulldog”或“whateverdogwhatever”,则评估为 true 。
strlen($row['5']) > 4
? (如果你在strlen($row['6']) > 4
上搜索,我想这应该至少是$row['6']
。
其他:你不是在混淆字符串和整数吗?也许if (strpos($row['6'], $val) !== FALSE)
应为if (strpos($row[6], $val) !== FALSE)
?
修改
为了便于阅读,我建议为CSV列定义常量。
例如:
define('CSV_ID', 5);
define('CSV_TEXT', 6);
//...
foreach ($arrCSV as $row) {
if (strpos($row[CSV_TEXT], $val) !== FALSE && strlen($row[CSV_ID]) > 4) {
//...
echo $row[CSV_TEXT];
}
}