承接 openeeer/minesweeper 相关项目开发

从需求分析到上线部署,全程专人跟进,保证项目质量与交付效率

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

openeeer/minesweeper

Composer 安装命令:

composer require openeeer/minesweeper

包简介

Console Game Minesweeper with SQLite database support

README 文档

README

Проект представляет собой консольную игру "Сапёр" (Minesweeper), реализованную на PHP с поддержкой базы данных SQLite. Игрок открывает ячейки на квадратном поле, избегая мин. Цель игры — открыть все безопасные клетки. Если игрок открывает ячейку с миной, игра заканчивается поражением.

Игра поддерживает интерактивный ввод команд для открытия ячеек и установки флагов, а также встроенную справку, которую можно вызвать в любой момент.

Новые возможности версии 3.3.0

  • Переход на ORM RedBeanPHP для работы с базой данных
  • Упрощенная работа с данными через объектно-реляционное отображение
  • Автоматическое создание таблиц при первом запуске
  • Улучшенная производительность работы с базой данных

Новые возможности версии 2.0.0

  • Автоматическое сохранение партий в базу данных SQLite
  • Три игровых режима: новая игра, просмотр списка партий, воспроизведение сохраненных игр
  • Полная запись ходов с координатами и результатами
  • Воспроизведение партий с пошаговым показом ходов
  • История игр с информацией об игроках, датах и результатах

Правила и команды

Правила игры

  • Игрок открывает ячейки, избегая мин.
  • Если мины нет, ячейка отображает количество соседних заминированных ячеек.
  • Если рядом с открытой ячейкой нет мин, автоматически открывается область незаминированных ячеек до тех пор, пока не встретится ячейка с цифрой.
  • Игрок может устанавливать флаги на подозрительные ячейки.

Режимы игры

  1. Новая игра — начать новую партию с вводом имени игрока, размера поля и количества мин
  2. Список партий — просмотр всех сохраненных в базе данных игр с информацией об игроках, датах и результатах
  3. Повтор партии — воспроизведение любой сохраненной игры с пошаговым показом ходов

Команды во время игры

  • o row col — открыть ячейку с координатами (row, col)
  • f row col — установить или убрать флаг на ячейке (row, col)
  • h — показать справку и правила игры

Ограничения

  • Размер поля не меньше 2.
  • Количество мин от 1 до size*size - 1.
  • Координаты ячеек должны находиться в пределах поля.

Работа с базой данных

Игра автоматически сохраняет все партии в базу данных SQLite (bin/minesweeper.db). Для каждой игры сохраняется:

Информация об игре

  • Дата и время игры
  • Имя игрока
  • Размер игрового поля
  • Количество мин
  • Позиции всех мин на поле
  • Результат игры (Победа/Поражение)

Запись ходов

Каждый ход игрока записывается в формате:

  • Номер хода
  • Координаты ячейки (строка, столбец)
  • Результат хода:
    • мины нет — ячейка открыта успешно
    • взорвался — игрок наступил на мину
    • выиграл — игрок выиграл партию

Воспроизведение партий

При выборе режима "Повтор партии" игра:

  1. Восстанавливает точное расположение мин
  2. Пошагово воспроизводит все ходы игрока
  3. Показывает результат каждого хода
  4. Отображает финальный результат партии

Требования

  1. PHP:
    • Версия: 7.4 или выше.
  2. Composer:

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

Вариант 1: Глобальная установка (Рекомендуется для игры)

  1. Установите пакет глобально через Composer:

    composer global require openeeer/minesweeper

    Примечание: Убедитесь, что глобальная папка Composer (~/.composer/vendor/bin или ~/.config/composer/vendor/bin) добавлена в вашу системную переменную PATH.

  2. Запустите игру из любого места в терминале:

    minesweeper

Вариант 2: Локальная установка (Для разработки)

  1. Склонируйте репозиторий:
    git clone https://github.com/openeeer/minesweeper
  2. Перейдите в каталог проекта:
    cd minesweeper
  3. Установите зависимости:
    composer install
  4. Запустите игру:
    php bin/minesweeper
    Для вывода справки используйте флаг --help:
    php bin/minesweeper --help

Примечания

  • Игровое поле и подсветка ячеек используют цвета консоли.
  • При открытии мины она подсвечивается оранжевым цветом.
  • Победа отображается зелёным цветом.
  • Можно открывать справку в любой момент во время игры командой h.

Используемые библиотеки

  • Symfony Console — используется для цветного вывода.
  • PHP CLI Tools — используется для консольных утилит.
  • RedBeanPHP — ORM для работы с базой данных SQLite.

openeeer/minesweeper 适用场景与选型建议

openeeer/minesweeper 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 9 次下载、GitHub Stars 达 0, 最近一次更新时间为 2025 年 09 月 28 日, 在 PHP 生态内属于活跃度较高的组件。

我们在过去多个企业项目中使用过 openeeer/minesweeper 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。

围绕 openeeer/minesweeper 我们能提供哪些服务?
定制开发 / 二次开发

基于 openeeer/minesweeper 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。

BUG 修复 & 性能优化

线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。

项目外包 & 长期维护

承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。

yvsm@zunyunkeji.com QQ:316430983 微信:yvsm316 西安尊云信息科技 · 专注 PHP / Go / 分布式系统研发

统计信息

  • 总下载量: 9
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 14
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 0
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: Unknown
  • 更新时间: 2025-09-28