krypt0nn/table

实现表格的简单库

0.1.0 2021-04-03 18:05 UTC

This package is auto-updated.

Last update: 2024-09-29 06:20:18 UTC


README

table - 一个用于处理PHP 7.4+上的字符串表格的小型库

安装

composer require krypt0nn/table

示例

创建表格

<?php

use Table\Table;

$table = new Table (['id', 'name'], [
    [0, 'Hello'],
    [1, 'from'],
    [2, 'Russia!']
]);
<?php

use Table\Table;

$table = new Table;

$table->columns (['id', 'name'])->items ([
    [0, 'Hello'],
    [1, 'from'],
    [2, 'Russia!']
]);

获取标题、元素及其数量

<?php

print_r ($table->columns ());

print_r ($table->items ());

echo $table->size ();
Array
(
    [0] => id
    [1] => name
)
Array
(
    [0] => Array
        (
            [0] => 0
            [1] => Hello
        )

    [1] => Array
        (
            [0] => 1
            [1] => from
        )

    [2] => Array
        (
            [0] => 2
            [1] => Russia!
        )

)
3

输出部分元素

<?php

$table->foreach (function ($item)
{
    echo $item[1] .' ';
});
Hello from Russia!

过滤元素

<?php

$table->where (function ($item)
{
    return $item[1] == 'hello';
});

输出元素数组

<?php

print_r ($table->get ());
Array
(
    [0] => Array
        (
            [id] => 0      
            [name] => Hello
        )

    [1] => Array
        (
            [id] => 1
            [name] => from
        )

    [2] => Array
        (
            [id] => 2
            [name] => Russia!
        )

)

添加元素

<?php

$table->push ([3, 'Alalalalala']);

$table->merge ([
    [4, 'Ololo'],
    [5. 'Olo lo'],
    [6, 'Lo']
]);

编码和解码表格

<?php

$table->delimiter = "\r\n";

file_put_contents ('table', $table->encode ());

$table = (new Table)->decode (file_get_contents ('table'));

table

2
id
name
0
Hello
1
from
2
Russia!

作者: Подвирный Никита