如何打印table2中与table1相关的所有数据
How to print all the data in table2 related with table 1
我有两个表 users 和 subjects
users 有这个字段 username,id,email,etc.
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
}
}
?>
你可以试试blog tutorials过段时间熟悉这些..
我有两个表 users 和 subjects
users 有这个字段 username,id,email,etc. 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
}
}
?>
你可以试试blog tutorials过段时间熟悉这些..