簡體   English   中英

如何打印表2中與表1相關的所有數據

[英]How to print all the data in table2 related with table 1

我有兩個表的用戶和主題

用戶具有該字段的用戶名,id,電子郵件等。 subjects具有此字段math,english,id,user_id,

/ UsersController.php /

public function grade($id = null)
    {

       $users = $this->Users->get($id, [
        'contain' => [
            'Subjects'
        ]
      ]);
      $this->set('users', $users);
      $this->set('_serialize', ['user']);
      //pr($users);exit;
    }

/ * grade.ctp /

[![<div class="users view large-10 medium-9 columns">
<?php   
//pr($users);exit;
foreach ($users as $user): ?>
    <div class="row">
        <div class="large-5 columns strings">
            <h6 class="subheader"><?= __('Username') ?></h6>
            <p><?= h($user->username) ?></p>
            <p><?php echo $this->user->username;?></p>

        </div>
        <div class="large-2 columns numbers end">
            <h6 class="subheader"><?= __('Id') ?></h6>
            <p><?= $this->Number->format($user->id) ?></p>
        </div>
    </div>
 <?php endforeach; ?>
</div>][1]][1]

當我單擊視圖等級數據時,將使用pr($ users)輸出

年級

App\Model\Entity\User Object
(
    [username] => Tyra
    [password] => 97a8afcf419cc231e1bdcd8584b0a246
    [id] => 6
    [email] => tyra@gmail.com
    [profile_pic] => Resource id #196
    [destination] => 
    [created] => 
    [subjects] => Array
        (
            [0] => App\Model\Entity\Subject Object
                (
                    [math] => 100
                    [english] => 100
                    [history] => 100
                    [science] => 100
                    [id] => 11
                    [user_id] => 6
                    [[new]] => 
                    [[accessible]] => Array
                        (
                            [*] => 1
                        )

                    [[dirty]] => Array
                        (
                        )

                    [[original]] => Array
                        (
                        )

                    [[virtual]] => Array
                        (
                        )

                    [[errors]] => Array
                        (
                        )

                    [[repository]] => Subjects
                )

        )

    [[new]] => 
    [[accessible]] => Array
        (
            [*] => 1
        )

    [[dirty]] => Array
        (
        )

    [[original]] => Array
        (
        )

    [[virtual]] => Array
        (
        )

    [[errors]] => Array
        (
        )

    [[repository]] => Users
)

我嘗試pr($ users); 在grade.ctp視圖中,我得到了上面的數據,其中包含主題字段,這是正確的。 但是如何在grade.ctp視圖中打印

由於您的數據是對象格式,因此您只需執行以下操作:

<?php
    echo $users->username; // prints username
    echo $users->email;
?>

並打印主題:

<?php 
  if(!empty($users->subjects)) {
      foreach($users->subjects as $subject) {
         echo $subject->math; // prints math
         echo $subject->english; // etc
      }
  }
?>

您可以嘗試博客教程 ,以便在一段時間內更加熟悉它們。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM