php hcl parser
v1.2.0
HCL は HashiCorp によって作成された設定言語です。 HCL ファイルは、Terraform を含むいくつかの HashiCorp 製品で使用されます。
このライブラリは、HCL 構成ファイルを PHP オブジェクトに解析します。
Composer を使用してphp hcl parserライブラリをインストールできます。プロジェクトのルートから次のコマンドを実行するだけです。
composer require divineomega/php-hcl-parser
HCL を PHP オブジェクトに解析するには、新しいHCLParser
オブジェクトを作成し、それに HCL を (文字列として) 渡してから、 parse
メソッドを呼び出します。以下の例を参照してください。
$ hcl = file_get_contents ( ' example.tf ' );
$ configObject = ( new HCLParser ( $ hcl ))-> parse ();
結果として得られるオブジェクトは次のようになります。
object (stdClass) #5 (2) {
[ " provider " ]=>
array ( 1 ) {
[ 0 ]=>
object(stdClass) #4 (1) {
[ " aws " ]=>
array ( 1 ) {
[ 0 ]=>
object(stdClass) #2 (3) {
[ " access_key " ]=>
string( 17 ) " $ {var.access_key}"
[ " region " ]=>
string( 13 ) " $ {var.region}"
[ " secret_key " ]=>
string( 17 ) " $ {var.secret_key}"
}
}
}
}
[ " resource " ]=>
array ( 1 ) {
[ 0 ]=>
object(stdClass) #8 (1) {
[ " aws_instance " ]=>
array ( 1 ) {
[ 0 ]=>
object(stdClass) #7 (1) {
[ " example " ]=>
array ( 1 ) {
[ 0 ]=>
object(stdClass) #6 (2) {
[ " ami " ]=>
string( 12 ) " ami-2757f631 "
[ " instance_type " ]=>
string( 8 ) " t2.micro "
}
}
}
}
}
}
}