从PHP会话变量中删除内容

时间:2017-07-19 18:38:10

标签: php

我正在从数据库中读取数据,我无法控制数据库及其值。

我正在使用PHP会话来显示这些数据。

输出$row['Type']时是否可以根据数据库返回的匹配项更改输出?我试图搜索解决方案,并且在以前的问题中找不到任何与此相关的内容。感谢。

示例:

如果在$ row ['Type']中输出'Fishing Boat',我想拦截它并将其更改为'Vessel'

代码段:

foreach($_SESSION['records'] as $key=>$row){
    $txt .='<h3>'.$row['Type'].'</h3><br/>' ;

3 个答案:

答案 0 :(得分:2)

如果你的意思是想要改变输出,如果你有&#39;钓鱼船&#39;在$row['Type']然后你需要什么

foreach($_SESSION['records'] as $key=>$row)
{
  if(strcmp($row['Type'] , 'Fishing Boat') == 0)
    $txt .='<h3> Vessel </h3><br/>' ;
  else
    $txt .='<h3>'. $row['Type'] .'</h3><br/>' ;
}

答案 1 :(得分:2)

您只需测试相关值,然后将$row['Type']或替换值连接到$txt

foreach($_SESSION['records'] as $key=>$row){
    if ($row['Type'] == 'Fishing Boat' ) {
        $txt .= '<h3>Vessel</h3><br/>';
    }else{
        $txt .= '<h3>'.$row['Type'].'</h3><br/>';
    }

或者使用三元运算符

foreach($_SESSION['records'] as $key=>$row){
    $txt .= ($row['Type'] == 'Fishing Boat' ) 
                ? '<h3>'Vessel'</h3><br/>' 
                : '<h3>$row['Type']</h3><br/>';

答案 2 :(得分:2)

此代码拦截并更改会话值:

foreach($_SESSION['records'] as $key=>$row){

     switch ($row['Type']) {
    case "Fishing Boat":
        $_SESSION['records'][$key]['Type'] = 'Vessel';
        break;
    case "Real Estate":
        $_SESSION['records'][$key]['Type'] = "Homes For Sale";
        break;
      // there is no need for "default:"
    }


    $txt .='<h3>'.$_SESSION['records'][$key]['Type'].'</h3><br/>' ;\
}

现在您的$_SESSION已更改,您可以再次打印:

foreach($_SESSION['records'] as $key=>$row){
    $txt .='<h3>'.$row['Type'].'</h3><br/>' ;\
}