我尝试通过调用另一个脚本中的函数和变量来为ascript中的变量赋值,但是当前我遇到错误说
未定义的属性:stdClass :: $ Boys in
未定义的属性:stdClass :: $ Girls in
我在脚本中调用一个名为report.php的脚本中的函数
report.php
public function projectReport($ID){
$get_con = $this->getConnection();
$result = mysql_query($query, $get_con);
$rep = new stdClass();
if(false !== $result){
$multis = array();
while($row = mysql_fetch_array($result, MYSQL_ASSOC)){
$count = new stdClass();
$count->Boys = (int)$row['males'];
$count->Girls = (int)$row['females'];
$multis[] = $count;
}
$rep->multiples = $multis;
}
return $rep;
}
我的剧本的功能主体
$report = new Report();
$log = $report->projectReport($ID);
if($log != false){
$Boys = $log->Boys;
$Girls = $log->Girls;
print_r($Boys);
print_r($Girls);
}
return $log;
答案 0 :(得分:0)
你的$ log永远不会是假的,所以你不需要检查它。 Alhtough倍数属性可能会丢失。
试试这个:
$report = new Report();
$log = $report->projectReport($ID);
if(property_exists($log, 'multiples')){ //check if multiples attribute exists
foreach ($log->multiples as $m) //walk through every multiples record
{
$Boys = $m->Boys; //get Boys and Girls attributes values and print them
$Girls = $m->Girls;
print_r($Boys);
print_r($Girls);
}
}
我很确定这不是你想要达到的目标,而是基于你到目前为止的工作方式。