stristr,如果string不包含任何内容(空字符串)

时间:2011-08-12 08:15:57

标签: php string foreach contains isset

我正在为我的网站搜索一下,当一个特定参数是''(没有)时,我想显示所有结果。我尝试了以下方法,但它没有用。

<?php
$a = file("test.txt");
sort($a);
foreach ($a as $b) {
$c = explode("|", $b);
if (isset($_GET['name'])) {
    if (stristr($c[0], $_GET['name'])) {
        echo '<option value="' . $c[0] . '">' . $c[0] . '</option>';
    }
}
?>

这只是一个测试脚本,我将在上面的if语句中使用多个GET。

4 个答案:

答案 0 :(得分:2)

使用empty代替isset。

答案 1 :(得分:1)

检查stristr是否未返回false ..

if (stristr($c[0], $_GET['name']) != FALSE)

答案 2 :(得分:0)

if (empty($_GET['name'])){
    echo '<option value="'.$c[0].'">'.$c[0].'</option>';
}

答案 3 :(得分:0)

<?php
$a = file("test.txt");
sort($a);
foreach ($a as $b) {
$c = explode("|", $b);
    if ((isset($_GET['name']) && stristr($c[0], $_GET['name'])) || !isset($_GET['name']))
        echo '<option value="' . $c[0] . '">' . $c[0] . '</option>';