首页 > 解决方案 > 如果表为空,如何显示“未找到记录”?

问题描述

我是 cakephp 3 的新手。现在,我正在从成功显示所有表数据的数据库中获取数据,但如果表为空,我想显示“未找到记录”消息。那么,我该怎么做?请帮助我。

控制器: PostsController

<?php
    namespace App\Controller;
    use App\Controller\AppController;

    Class PostsController extends AppController {
        Public function index(){
            $this->set('data',$this->Posts->find('all'));
        }
    }
?>

布局:Index.cpt

<div class="row">
    <table class="table">
        <thead>
            <tr>
                <th>Title</th>
                <th>Description</th>
                <th>Action</th>
            </tr>
        </thead>
        <tbody>
            <?php
                if(!empty($data))
                {
                    foreach($data as $row)
                    {
            ?>
                        <tr>
                            <td><?php echo $row->title; ?></td>
                            <td><?php echo $row->description; ?></td>
                            <td></td>
                        </tr>
            <?php
                    }
                }
                else
                {
                    echo '<p>No record found</p>'; 
                }
            ?>
        </tbody>
    </table>
</div>

标签: phpcakephp-3.0

解决方案


作为find('all')cakephp 返回对象中的方法,正常检查不会为空。

代替

if(!empty($data))

试试这条线

if (!$data->isEmpty()) {

应该管用。

请找到更新的文档链接


推荐阅读