Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/63.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在PHP中是否有与WHEN等效的函数?_Php_Mysql - Fatal编程技术网

在PHP中是否有与WHEN等效的函数?

在PHP中是否有与WHEN等效的函数?,php,mysql,Php,Mysql,例如:我有一个页面列出了存储在数据库中的书籍标题。我想做的是,当某本书的书名出现时,说些不同的话,或者添加额外的信息,比如“出售” 是否存在允许我在循环内操作数据的函数 我试过几次,但都没有达到预期的效果 以下是我的思考过程: 查询: $sql = "SELECT * FROM `artist` ORDER BY artist_name ASC"; $q = $db->query($sql); $q->setFe

例如:我有一个页面列出了存储在数据库中的书籍标题。我想做的是,当某本书的书名出现时,说些不同的话,或者添加额外的信息,比如“出售”

是否存在允许我在循环内操作数据的函数

我试过几次,但都没有达到预期的效果

以下是我的思考过程:

查询:

 $sql = "SELECT *
            FROM   `artist`
            ORDER BY artist_name ASC";

    $q = $db->query($sql);
    $q->setFetchMode(PDO::FETCH_ASSOC); 
输出:

 <?php while ($r = $q->fetch()); ?>
                                <li class="<?php echo $r['sort_status']; ?>">
                                    <figure>
                                        <div class="gallery-img"><a href="book/<?php echo $r['book_slug']; ?>/<?php echo $r['book_id']; ?>"><img src="books/<?php echo $r['photo']; ?>" alt="picture of <?php echo $r['book_title']; ?>"></a></div>
                                        <figcaption>

                                            <h3 class="padding-fifteen-bottom"><?php $book = $r['book_title']; if($book=="A Tale of Two Cities"){echo "A Tale of Two Cities - On Sale NOW! ";} else { echo htmlspecialchars_decode(truncate($book,34));}?></h3>

                                        </figcaption>
                                    </figure>
                                </li>
                                <!-- end work item -->
                                <?php endwhile; ?> 


HTML格式

<?php if($book_title == "My Title"): ?>
<p>my html</p>
<?php endif;?>

我的html


对不起。我很难理解这个概念。我是否需要每次在end if语句中格式化整个HTML,或者我可以简单地回显我想要的响应?是的,您可以简单地回显您想要的响应。第二个例子只是给出html响应的一种方式,而不必将其放入回送或打印中。例如:
A Tale of Two Cities
变成
A Tale of Two Cites-现在正在出售
下面是我的代码现在的样子:
是,因为您的else语句格式不正确。用这个谢谢你的帮助。我还在拿复本。我想我得另找一种方法。我会给你的答案打上正确的标记,因为你的答案与我最初的思考过程是一致的。因此,我猜测问题可能来自我的数据库,也可能来自我页面上代码的其他地方。再次感谢。
<?php if($book_title == "My Title"): ?>
<p>my html</p>
<?php endif;?>