ryanhs / chess.php
该包已被弃用,不再维护。未建议替代包。
chess.php 是一个用于棋子移动生成/验证、棋子放置/移动、以及王后/将死/无法动弹检测的 PHP 棋库 - 基本上是一切除了人工智能的功能。注意:这是一个为 PHP 端移植的 chess.js。
v1.0.3
2017-08-25 08:56 UTC
Requires (Dev)
- johnkary/phpunit-speedtrap: ^1.0
- phpunit/phpunit: ^5.3
This package is not auto-updated.
Last update: 2020-03-20 17:26:42 UTC
README
chess.php 是一个用于棋子移动生成/验证、棋子放置/移动、以及王后/将死/无法动弹检测的 PHP 棋库 - 基本上是一切除了人工智能的功能。
注意:这是一个从 chess.js 端移植到 PHP 的版本。
安装
使用 composer,执行 composer require ryanhs/chess.php
或者在您的 composer.json 中添加
"require": {
"ryanhs/chess.php": "^1.0"
}
如果您不了解 composer,它是一个在 PHP 中用于包管理的非常有用的工具,
您可以在这里学习 composer:这里
代码风格
关于代码风格、命名系统等,因为这是一个 PHP 项目,我尽量遵循 PHP-PSR 标准,例如 game_over() 变成 gameOver()。
记住,任何函数名都应该转换为驼峰式命名法。
示例代码
下面的代码随机玩一局完整的棋局。
<?php require 'vendor/autoload.php'; use \Ryanhs\Chess\Chess; $chess = new Chess(); while (!$chess->gameOver()) { $moves = $chess->moves(); $move = $moves[mt_rand(0, count($moves) - 1)]; $chess->move($move); } echo $chess->ascii() . PHP_EOL;
Chess.js
您可以在 这里 检查原始的 chess.js。
Chess.php 文档
您可以在 这里 查看。
BUGS
TODO
需要维护者/合作者
由于该项目目前处于非活跃开发状态,需要维护者/合作者。
如果您有兴趣成为合作者,请告诉我。:-)