phalcon volt에 원래 또는 php의 Fuction을 추가하는 방법
phalcon의 Volt 확장
여기 있는데,
즐거운 답변이 아니기 때문에. .
config/services.php
config/service.php$compiler->addFunction(
"widget",
function ($resolvedArgs, $exprArgs) {
return "MyLibrary\\Widgets::get(" . $resolvedArgs . ")";
}
);
이런 설명이 있습니다만,
어쩌면 View의 확장을 할 때, volt의 동작을 정의하고있는 곳이 있습니다. 거기에 추가하는 느낌이 될 것 같아요.
주의점은, 실행하고 싶은 Function 이름을 캐릭터 라인으로 돌려준다고 하는 점. 여기 중요
$di->setShared('view', function() {
}
간단하게 php의 date_format 함수를 추가하는 경우
$volt->getCompiler()->addFunction('date_format', 'date_format');
이하, 어쩐지 조금 처리를 넣는 경우, post된 데이터를 base64_decode를 추가하는 방법
$volt->getCompiler()->addFunction('base64_decode', function($args) {
$str = str_replace(' ', '+', $args);
return "base64_decode({$str})";
});
인수가 많으면
$volt->getCompiler()->addFunction('mb_strimwidth', function($args) {
return "mb_strimwidth({$args})";
});
여기가 조금 재미있는 곳에서, addFunction 의 제 2 인수에 function($args)로 합니다만, 여기는 복수 인수 지정되면 그 캐릭터 라인이 건네 오는 것입니다.
사용할 때는 이런 느낌이지만
{{ mb_strimwidth(str,0,10,"...") }}
위에서 말한
$args
에,
str,0,10,"..."
라는 문자열이 들어오므로 그대로 세트하면 됩니다.
Reference
이 문제에 관하여(phalcon volt에 원래 또는 php의 Fuction을 추가하는 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/f_uto/items/f6022a365d41fe008032
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
$compiler->addFunction(
"widget",
function ($resolvedArgs, $exprArgs) {
return "MyLibrary\\Widgets::get(" . $resolvedArgs . ")";
}
);
$di->setShared('view', function() {
}
$volt->getCompiler()->addFunction('date_format', 'date_format');
$volt->getCompiler()->addFunction('base64_decode', function($args) {
$str = str_replace(' ', '+', $args);
return "base64_decode({$str})";
});
$volt->getCompiler()->addFunction('mb_strimwidth', function($args) {
return "mb_strimwidth({$args})";
});
{{ mb_strimwidth(str,0,10,"...") }}
str,0,10,"..."
Reference
이 문제에 관하여(phalcon volt에 원래 또는 php의 Fuction을 추가하는 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/f_uto/items/f6022a365d41fe008032텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)