我在控制器中遇到有關heredoc語法的問題。我的控制器的功能是這樣的:如何在foreach循環中使用php heredoc語法
function active() {
$userlist = $this->input->post('userlist');
$userlist = explode(',',$userlist[0]);
$items = '';
if(!empty($userlist)){
foreach($userlist as $buddy)
{
$actv = $this->user_model->check_active_users($buddy);//returns 0 if no results found
if ($online_buddies == 0) {
$items .= <<<EOD
{
"fl": "0",
"fid": "{$buddy}"
},
EOD;
}//if returned 0 inactive
}//foreach
}//if nt empty $mybuddies
if ($items != '')
{
$items = substr($items, 0, -1);
}
header('Content-type: application/json');
?>
{
"items": [
<?php echo $items;?>
]
}
<?php
exit(0);
}//end of func active
$userlist
持有user-ids
。
$this->user_model->check_active_users($buddy)
如果找不到結果,則返回0。
我想得到一個標誌0
如果在數據庫中找不到任何結果以及相應的用戶標識符。
但是,
$items .= <<<EOD
{
"fl": "0",
"fid": "{$buddy}"
}
EOD;
這裏,fl
回報0
但fid
將返回什麼。我做錯了嗎?"fid": "{$buddy}"
,而不是操作字符串,你應該嘗試使用PHP本身的數組S和輸出最終結果由'json_encode()'; –
坦克很多..... – user3177114