amercier / rectangular-mozaic
矩形马赛克生成库
v0.3.0
2018-10-06 13:19 UTC
Requires
- myclabs/php-enum: ^1.6
Requires (Dev)
- brainmaestro/composer-git-hooks: ^2.5
- phpunit/phpunit: ^7.3
- squizlabs/php_codesniffer: ^3.3
This package is auto-updated.
Last update: 2024-09-07 03:23:47 UTC
README
矩形马赛克生成库,适用于PHP。
描述
给定 瓦片数量 T 和 列数 Columns C
,此库有助于生成一个包含 C
列的网格,网格中包含 T
个瓦片。每个瓦片可以
- 占用 1 个单元格,或者
- 垂直跨越 2 个单元格,
- 水平跨越 2 个单元格。
注意:由于瓦片是随机分布的,行数可能会在每次执行时有所不同。
演示
在 Œco Architectes 的示例(刷新页面以获取新布局)
注意:所有图片均属于 Œco Architectes。
安装
使用 Composer 安装
composer require amercier/rectangular-mozaic
用法
在下面的示例中,我们将创建一个包含 20
个瓦片的 HTML <table>
元素。
注意:这里我们只是为了简单起见使用表格。对于真正的网站,仅使用
<table>
来显示表格数据。
<?php use \RectangularMozaic\Generator as Mozaic; use \RectangularMozaic\Cell; $tilesNumber = 20; $columns = 5; $grid = Mozaic::generate($tilesNumber, $columns); echo '<table>'; $i = 1; foreach ($grid->getCells() as $row) { echo '<tr>'; foreach ($row as $cell) { switch ($cell) { case Cell::SMALL: echo '<td>' . $i . '</td>'; break; case Cell::TALL_TOP: echo '<td rowspan="2">' . $i . '</td>'; break; case Cell::TALL_BOTTOM: break; // do nothing case Cell::WIDE_LEFT: echo '<td colspan="2">' . $i . '</td>'; break; case Cell::WIDE_RIGHT: break; // do nothing } $i += 1; } echo '</tr>'; } echo '</table>';
生成的表格示例
要运行此示例,请在本地上 git clone
此存储库,并运行
composer install composer start