0
我得到一个“没有收到任何数据”(ERR_EMPTY_RESPONSE)用下面的代码:CakePHP的:没有数据接收
/**
* afterFind - anytime Cake finds an entry in the DB
* automatically fill in "sendto" field
* this contains all of the email addresses for the member
*
* return @results
*/
public function afterFind($results, $primary = false) {
foreach ($results as $key => $val) {
if (isset($val['Member']['id'])) {
$results[$key]['Member']['sendto'] = $this->getEmailsByMemberId($val['Member']['id']);
}
}
return $results;
}
/*
* Get a list of email addresses for the user
* For now, return a dummy list
*
*/
public function getEmailsByMemberId($memberId) {
$this->contain();
$member = $this->find('first', array('conditions' => array('id' => $memberId)));
if(! $member) {
return false;
}
$emails = $member['Member']['email'];
if(isset($member['Member']['work_email'])) {
$emails .= ";" . $member['Member']['work_email'];
}
return $emails;
}
它与getEmailsByMemberID在$成员=调用(这样做)。如果我注释掉这一行,代码将无误地运行。任何想法,为什么我得到这个错误?基本上,我想检查数据库
这似乎是一个永无止境的递归情况。在'find'之后,你可以调用'getEmailsByMemberId'来做另一个'find'。这不就是一个无限循环的'find'吗?另外,“sendto”不会更好地实现为虚拟领域吗? – AgRizzo