plantuml-encoding을 사용하여 PHP로 PlantUml
개요
PHP로 API 클라이언트 구현 을 참고로, plantuml-encoding 을 사용하여 PlantUML 코드를 압축 문자열로 하는 변환을 PHP로 한다.
최종 목적 : PlantUML의 코드를 텍스트로 실제 데이터로 유지하면서 (git 관리하면서), 그림은 자동으로 업데이트되어 열람 만하면 쉽게 할 수있는 환경을 찾는다
try
환경
PHP 실행할 수 있는 환경.
이번은 docker-compose에서 준비.
첫 번째 디렉토리 구조
project/
├ docker-compose.yml
├ docker(dockerfileなど入ってる)
├ public/
└ index.php/
jawira/plantuml-encoding
composer로 넣기
$ composer require jawira/plantuml-encoding
우선 실행해 보겠습니다.
참고 의 샘플 코드를 조금 바꾸어 보았습니다.
index.php
<?php
require '../vendor/autoload.php';
use function Jawira\PlantUml\encodep;
$encode = encodep('
Alice -> Bob: hello
');
$svg = file_get_contents("http://www.plantuml.com/plantuml/svg/{$encode}");
echo $svg
encodep()
함수로 인코딩합니다.생성된 압축 문자를 사용하여 PlantUML Server에서 svg를 가져와서 그대로 화면에 출력합니다.
PlantUml을 다른 파일에 작성
./umls/test.puml
@startuml
Alice -> Bob: hello
@enduml
index.php
<?php
require '../vendor/autoload.php';
use function Jawira\PlantUml\encodep;
$uml = file_get_contents('../umls/test.puml');
$uml = str_replace('@startuml', '', $uml);
$uml = str_replace('@enduml', '', $uml);
$encode = encodep($uml);
$svg = file_get_contents("http://www.plantuml.com/plantuml/svg/{$encode}");
echo $svg;
다른 파일에 UML을 작성하고 읽습니다.
에디터의 패키지로 개발중에 프리뷰를 실시하려면
@startuml
와 @enduml
의 기술이 필요합니다만, 인코딩시에는 제거합니다.끝
프레임 워크 등을 사용하여 .puml 파일을 저장하는 작업 디렉토리의 내용이 그대로 그림으로 표시 할 수있게되면 편리하지 않을까 생각했습니다.
Reference
이 문제에 관하여(plantuml-encoding을 사용하여 PHP로 PlantUml), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/_mmmm_/items/094cc8ac4a2980751524텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)