(c) Larry Ewing, Simon Budig, Garrett LeSage
� 1994 �.

������� ����������� � ��������������� �����������

������ | ����� | � ������� | ��������� ��������� | ����������� ��� | �������� ���/AMICT
���������� | ���������� | ������� ������� | ������-��������� | �������� � ��������� ������
�������������� ������� | ���������� | ����� �������� | ���������� ����������

���� ������

�������� ������ ������ � �������� � ��������� � PHP 5. ������� �������� ����������� ��������� ������ � PHP 5: ������������ ������� ���������, ������������, ���������, ����������� �������� � ������, ������������, ���������� �������, ���������� ����������� � ������� final, ����������� ������, ����������

�������� ������

 #   ������� 
1 ���������� ��������� student_interface � ��������: show_info, set_debts, show_debts, show_students
2 � ����� students.php ������� ����� students, ������� ��������� ��������� student_interface � �������� ��������� �������� � ������:
��������:
$name - ��� ��������. �������� �������� ������ ���� �������� ������ � ��������� ������;
$group - ������. �������� �������� ������ ���� �������� ������ � ��������� ������;
$n_assignments - ���������� ����������� �������;
$n_absents - ���������� ����������� ������;
$debts - boolean, false - ��� ������, true - ���� �����;
$n_questions - ���������� �������� �� ������.
���������:
N_LECT - ����� ����������� ������;
N_LAB - ����� ������������ �������.
������:
show_info - ������� ����������: ��� ��������, ������, ���������� ����������� �������, ���������� ����������� ������, ���������� ���������� ������;
set_debts - ������������� �������� ���������� $debts, true - ���� ���� ����������� ������ � �������� ������������� �������, false - �����; ������������� �������� $n_questions = ����� ����������� ������;
show_debts - ������� "��� ������" ���� $debts=false, ����� ������� "���� �����" � ����������: ���������� �������� �� ������, ���������� ������������� ������������.
3 �������� � ����� �����������, ����������� 4 ���������: ��� ��������, ����� ������, ���������� ����������� �������, ���������� ����������� ������ � ��������������� �������� ������� $name, $group, $n_assignments � $n_absents ��������������
4 ���������� ����� __clone() ���, ����� ��� �������� ����� ������� ������ students ������������ �������� ������� $n_assignments, $n_absents, $debts, $n_questions
5 �������� � ����� ����������� �������� $n_students - ������� �������� � ����� show_students ��� ������ �������� ���������� �������� ������ students. �������� ���������� ������ � �������������� ����������� ��� ����� ����� ��������
6 ������� ���� view_debts.php ��� ������ � ������� students, ������� �������� � ������� __autoload
7 ������� ��������� �������� ������, ������� � ����������� ��������� �������� ����������. ������� ���������� � �������� (show_info) ��� ������������� �������
8 ������� ����� $copy ������������� �������. ������� ���������� show_info ��� $copy
9 ������� ����� set_debts, � ����� ������� ����� ����������� �������� � ������� show_debts
10 ������� ����� child_students, ����������� ����� students. �������������� ����� show_debts ����� �������, ����� ��� ������ $n_questions ����������� �������� ������ ��-������� (����������� ��-������� ������ ��������� ����������). ��� ����� �������� � ����� child_students �������� $n_reports � �������������� �����������
11 � ������� final ��������� ���������� ������ show_debts � ������ students. ��������� ������������� ������

�������� ������ ������

������� ����������� � 8 ������ ��� ������� ���������� �����, ������������� ��� ������ ������������ ������. ��� ���� ������� ������ ���� ��������� ���������, ��������� ������ ��������������� ����������� �������, ����� ������ �������� ����������� �������. ��� ������������ ������ ����� �������, ������� ���� ����������� ����� ������ ���� ����� �����.