herrira/mermaid

PHP 的 mermaid 语法构建器。

0.1.2 2022-11-12 11:05 UTC

This package is auto-updated.

Last update: 2024-09-12 15:03:34 UTC


README

Latest Version on Packagist Test Status

一个 PHP 库,允许您生成 mermaid-js 语法。

可用图表

  • 类图

什么是 mermaid ?

文档

它是一个基于 JavaScript 的绘图和图表工具,可以将 Markdown 启发的文本定义渲染为动态创建和修改的图表。

您还可以在GitHub 的 Markdown中使用它。

安装

您可以通过 composer 安装此包

composer require herrira/mermaid

使用

use Herrira\Mermaid\ClassDiagram\Builder;

$builder = new Builder();
$builder->inheritance('Duck', 'Animal')
    ->inheritance('Fish', 'Animal')
    ->inheritance('Zebra', 'Animal')
    ->publicAttribute('Animal', 'age', 'int')
    ->publicAttribute('Animal', 'gender', 'String')
    ->publicMethod('Animal', 'isMammal')
    ->publicMethod('Animal', 'mate')
    ->class(function ($class) {
        $class->name('Duck')
            ->publicAttribute('beakColor', 'String')
            ->publicMethod('swim')
            ->publicMethod('quack');
    })
    ->class(function ($class) {
        $class->name('Fish')
            ->privateAttribute('sizeInFeet', 'int')
            ->privateMethod('canEat');
    })
    ->class(function ($class) {
        $class->name('Zebra')
            ->publicAttribute('is_wild', 'bool')
            ->publicMethod('run');
    });

将产生

classDiagram
Animal <|-- Duck
Animal <|-- Fish
Animal <|-- Zebra
Animal : +int age
Animal : +String gender
Animal: +isMammal()
Animal: +mate()
class Duck{
+String beakColor
+swim()
+quack()
}
class Fish{
-int sizeInFeet
-canEat()
}
class Zebra{
+bool is_wild
+run()
}

注意: 缩进支持将在未来的版本中提供。