我不能说明为什么该方案没有奏效。 我应带每个学生的物体,并用他们来分配_to_dorm,并在护堤上添加。 然后,在阵列中印刷所有占用者,以图人功能。 所有方案都是假名之一的,与占领者的观点无关。 我甚至不敢肯定,阿贝托--护堤功能甚至正在发挥作用。
指数。 网址
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title></title>
</head>
<body>
<?php
require_once ( student.class.php );
require_once ( dorm.class.php );
$dorms = array();
$students = array();
$dorms[0]= new Dorm( Landis , 402);
$dorms[1]= new Dorm( Salley , 570);
$dorms[2]= new Dorm( DeGraff , 700);
$dorms[3]= new Dorm( Cawthon , 297);
$dorms[4]= new Dorm( Reynolds , 243);
$students[0] = new Student( Tim , James , senior , male );
$students[1] = new Student( Kyle , McLastly , junior , male );
$students[2] = new Student( Stacey , Keibler , senior , female );
$students[3] = new Student( Jessica , Mullins , junior , female );
$students[4] = new Student( Kenneth , Yagems , senior , male );
$students[5] = new Student( Chad , Stacey , sophomore , male );
$students[6] = new Student( Kyle , Bridgan , senior , male );
$students[7] = new Student( Heath , Banks , sophomore , female );
$students[8] = new Student( Christina , Burbanks , freshman , female );
$students[9] = new Student( Thomas , Wilson , senior , male );
$students[10] = new Student( Katy , Parks , junior , female );
$students[11] = new Student( Jay , Bradshaw , sophomore , male );
$students[12] = new Student( Laura , Demetri , freshman , female );
$students[13] = new Student( Bryan , Griffin , freshman , male );
$students[14] = new Student( Stuart , Griffin , senior , male );
shuffle($students);
foreach($students as $student){
$key = array_rand($dorms);
$dorm = $dorms[$key];
$dorm->assign_to_dorm($student);
}
foreach ($dorms as $dorm){
echo "<h3>".$dorm->get_dname()."</h3>";
echo "<p>".$dorm->view_occupants()."</p>";
}
?>
</body>
</html>
dorm.class.php file
<?php
require_once ( student.class.php );
class Dorm
{
private $dorm_name;
private $capacity;
private $occupants = array();
public function __construct($dorm_name,$capacity) {
$this->dorm_name = $dorm_name;
$this->capacity = $capacity;
}
public function assign_to_dorm($student){
if(count($this->occupants) >= $this->capacity) {
return FAlSE;
}
else{
array_push($this->occupants, $student);
return TRUE;
}
}
function get_dname(){
return $this->dorm_name;
}
function get_capacity(){
return $this->capacity;
}
function view_occupants(){
foreach($this->occupants as $resident){
echo "<p>".$resident."</p>";
}
}
}
?>