fork(3) download
  1. <?php
  2. class Question
  3. {
  4. public $text; // текст вопроса
  5. public $points = 5; // число баллов, по умолчанию 5
  6. public $answers; // варианты ответов
  7. public $correctAnswer; // правильный ответ
  8. }
  9.  
  10. // Функция, создающая массив с вопросами:
  11. function createQuestions()
  12. {
  13. // Создаем пустой массив
  14. $questions = [];
  15.  
  16. // Создаем и заполняем первый объект
  17. $q = new Question;
  18. $q->text = "Познаю ли Я ООП?";
  19. $q->points = 1;
  20. $q->answers = array('a'=>'Да', 'b' => 'Не знаю', 'c' => 'Все зависит от меня самого', 'd' => 'Нет');
  21. $q->correctAnswer = 'c';
  22. // Кладем вопрос в массив
  23. $questions[] = $q;
  24.  
  25. // Создаем второй объект
  26. $q = new Question;
  27. $q->text = "Оп - няша?";
  28. $q->points = 1337;
  29. $q->answers = array('a' => 'Да', 'b' => 'Определенно', 'c' => 'Он еще и умняша', 'd' => 'Все ответы верны');
  30. $q->correctAnswer = 'd';
  31. // Кладем вопрос в массив
  32. $questions[] = $q;
  33.  
  34. // Создаем третий объект
  35. $q = new Question;
  36. $q->text = "Какой город является столицей России?";
  37. $q->points = 100;
  38. $q->answers = array('a' => 'Киев', 'b' => 'Санкт-Петербург', 'c' => 'Лондон', 'd' => 'Москва');
  39. $q->correctAnswer = 'd';
  40. // Кладем вопрос в массив
  41. $questions[] = $q;
  42.  
  43. return $questions;
  44. }
  45.  
  46. function printQuestions($questions)
  47. {
  48. $number = 1; // номер вопроса
  49.  
  50. foreach ($questions as $question) {
  51. echo "{$number}. {$question->text}\n\n";
  52.  
  53. echo "Варианты ответов:\n";
  54.  
  55. foreach ($question->answers as $letter => $answer) {
  56. echo " {$letter}. {$answer}\n";
  57. }
  58.  
  59. $number++;
  60. }
  61. }
  62.  
  63. $questions = createQuestions();
  64. printQuestions($questions);
Success #stdin #stdout 0.01s 82880KB
stdin
Standard input is empty
stdout
1. Познаю ли Я ООП?

Варианты ответов:
  a. Да
  b. Не знаю
  c. Все зависит от меня самого
  d. Нет
2. Оп - няша?

Варианты ответов:
  a. Да
  b. Определенно
  c. Он еще и умняша
  d. Все ответы верны
3. Какой город является столицей России?

Варианты ответов:
  a. Киев
  b. Санкт-Петербург
  c. Лондон
  d. Москва