PHP str_替换未正确替换

PHP str_替换未正确替换,php,string,if-statement,replace,rewrite,Php,String,If Statement,Replace,Rewrite,好的,这是我的代码: <?php if(empty($_GET['keywords'])) { echo "Latest jobs in ".$_GET['loc']; } elseif(empty($_GET['loc'])) { echo "Latest ".$_GET['keywords']." jobs"; } elseif(empty($_GET['keywords']) && (

好的,这是我的代码:

<?php if(empty($_GET['keywords']))
    {
        echo "Latest jobs in ".$_GET['loc'];
    } 
    elseif(empty($_GET['loc']))
    {
        echo "Latest ".$_GET['keywords']." jobs";
    } 
    elseif(empty($_GET['keywords']) && ($_GET['loc']))
    {
        echo "BLAH";
    }
    else 
    {
        echo "Latest ".$_GET['keywords']." jobs in ".$_GET['loc'];
    }
    ?>
php是我希望上面的数据能够得到回应的页面 它用于标题格式等

请大家帮忙,到目前为止我已经花了3个小时在这上面了,现在我只剩下代码块了:(

**STR_替换下面的代码**

function search()
{
if(isset($_POST['keywords']) || ($_POST['loc']))
    {
    $replace_array = array(',',' ');
    if(empty($_POST['keywords'])) 
    { 
        $keywords = ''; 
        $loc = str_replace($replace_array,'-',$_POST['loc']);
        header("Location: jobs/$loc");
    } elseif(empty($_POST['loc']))
    {
        $keywords = str_replace($replace_array,'-',$_POST['keywords']); 
        $loc = '';
        header("Location: $keywords/jobs");
    }
    else 
    {
        $keywords = str_replace($replace_array,'-',$_POST['keywords']); 
        $loc = str_replace($replace_array,'-',$_POST['loc']);
        header("Location: $keywords/jobs-in/$loc");
    }
    }   
}

如果两者都为空,则第一个
If
也解析为true,因为
A&&B==true
意味着
A==true
(基本布尔逻辑)

试试这个:

if(empty($_GET['keywords']) && empty($_GET['loc']))  {
    echo "BLAH";
} elseif(empty($_GET['keywords'])) {
    echo "Latest jobs in ".$_GET['loc'];
} elseif(empty($_GET['loc'])) {
    echo "Latest ".$_GET['keywords']." jobs";
} else {
    echo "Latest ".$_GET['keywords']." jobs in ".$_GET['loc'];
}

最后,
str_replace
与这个问题(或你的重写规则)有什么关系?

Um….,你能告诉我们
str_replace()
在哪里起作用吗?“PHP str_replace未正确替换”更新,按submit表示歉意它运行sdearch()函数然后根据需要重定向,然后在目标页面上我希望它执行重写。您的htaccess显示为
jobs.php?keywords
,这意味着一个GET方法,您在一段代码中使用GET数组,然后切换到POST,为什么?检查错误并执行变量转储。不知道这些帖子也来自何处,一个f很可能是orm,但我们不知道。帖子来自索引页上的表单,然后在提交时&url重写,然后从url中提取,因此使用Get。下面给出了答案,你现在必须问他。祝你一切顺利;-)干杯哦,添加
退出在每个头之后,否则您的代码可能需要继续执行。
if(empty($_GET['keywords']) && empty($_GET['loc']))  {
    echo "BLAH";
} elseif(empty($_GET['keywords'])) {
    echo "Latest jobs in ".$_GET['loc'];
} elseif(empty($_GET['loc'])) {
    echo "Latest ".$_GET['keywords']." jobs";
} else {
    echo "Latest ".$_GET['keywords']." jobs in ".$_GET['loc'];
}