一个潜在的问题是,如果条件失败,则不会返回任何内容:
public function getRatings($content)
{
//echo $postID;
if(function_exists(\'the_ratings\')) {
/*if(is_null($postID))
{
the_ratings();
} else {
the_ratings(\'div\', $postID);
}*/
$rating = the_ratings();
return $content.$rating;
}
}
要简化:
public function getRatings($content)
{
// Conditional
if(function_exists(\'the_ratings\')) {
// Do stuff
// Return modified content
return $content.$rating;
}
}
问题是:如果
the_ratings()
函数不存在。您需要考虑这种情况:
public function getRatings($content)
{
// Conditional
if(function_exists(\'the_ratings\')) {
// Do stuff
// Return modified content
return $content.$rating;
}
// Condition is false;
// Just return the original content
return $content;
}
一种更简单的方法(可能)是在条件外部返回,而只在条件内部修改:
public function getRatings($content)
{
// Conditional
if(function_exists(\'the_ratings\')) {
// Do stuff
// Modify content
$content .= $rating;
}
// Return content, modified or unmodified
return $content;
}