shindasayonara/php_puchkin_iyu

Implementation of a php program on the topic "Greatest common divisor"

v1.2 2025-03-05 11:17 UTC

This package is auto-updated.

Last update: 2025-05-05 11:37:39 UTC


README

GCD Game — это веб-приложение, в котором игроку предлагается вычислить наибольший общий делитель (НОД) двух чисел. Игра разработана на языке PHP с использованием Composer для управления зависимостями, а также с помощью REST API взаимодействуя с базой данных SQLite на сервере.

Установка и запуск

Локальная установка

  1. Клонируйте репозиторий:
    git clone https://github.com/shindasayonara/GCD_Game.git
    cd GCD_Game
  2. Установите зависимости через Composer:
    composer install
  3. Запустите встроенный PHP-сервер:
    php -S localhost:3000 -t public
  4. Откройте в браузере:
    http://localhost:3000/
    

Установка через Packagist (консольная версия)

  1. Убедитесь, что Composer установлен глобально.
  2. Установите игру:
    composer global require shindasayonara/php_puchkin_iyu
  3. Запустите игру из командной строки:
    gcd your_name

Используемые технологии

  • PHP — основной язык разработки.
  • Composer — управление зависимостями и автозагрузка классов.
  • SQLite — база данных для хранения информации об игроках и сыгранных партиях.
  • Slim Framework — микрофреймворк PHP для создания REST API и веб-приложения
  • wp-cli/php-cli-tools — библиотека для удобного взаимодействия с консолью.
  • HTML/CSS (styles.php) — стилизация веб-интерфейса.

Структура проекта

Task01/GCD
├── bin/
│   └── gcd               # Запускной файл консольной версии игры
├── src/
│   ├── Controller.php    # Логика игры и обработчики REST API
│   ├── View.php          # Функции отображения (для консольной версии)
│   ├── Database.php      # Работа с базой данных SQLite
│   ├── Game.php          #
├── db/
│   └── database.sqlite   # Файл базы данных
├── public/
│   ├── index.php         # Главная страница веб-приложения
│   ├── index.html        # Frontend для Single Page Application
├── composer.json         # Файл конфигурации Composer
└── README.md             # Описание проекта

Функции игры

  • Генерация двух случайных чисел, нахождение их НОД.
  • Поддержка как консольного режима, так и веб-интерфейса.
  • Автоматическое сохранение результатов игр в базу данных.
  • Взаимодействие с базой данных с помощью REST API.
  • Возможность просмотра списка игроков и их результатов.
  • Очистка базы данных через веб-интерфейс.

Как играть (веб-версия)

  1. Откройте в браузере http://localhost:3000/.
  2. Введите свой ник и начните игру.
  3. Вам будут предложены два числа — введите их НОД.
  4. После ответа отобразится результат (верно/неверно) и правильный НОД.
  5. Вся история игр сохраняется в базе данных.

Как играть (консольная версия)

Найди НОД чисел 55 и 24: 2
Неверно. Правильный ответ: 1

Дополнительные возможности

  • Просмотр всех игроков и их игр: http://localhost:3000/players.php
  • Очистка базы данных: http://localhost:3000/clear.php

Ссылки