Q&A

CMS/프레임워크 Rhymix 2.1
개발 언어 PHP 8.4

안녕하세요

 

v2 스킨을 작성중인데 아래와 같이 스킨에서 사용자정의함수를 작성하면

@verbatim

@php

function val_sort($a, $b){

    if ($a->order_group === $b->order_group) {

        return $a->order_idx <=> $b->order_idx;

    }

    return $a->order_group <=> $b->order_group;

}

@endphp

@endverbatim

 

 

캐시파일에서는 아래처럼 변경됩니다.

<?php

function val_sort($__Context->a, $__Context->b){

    if ($__Context->a->order_group === $__Context->b->order_group) {

        return $__Context->a->order_idx <=> $__Context->b->order_idx;

    }

    return $__Context->a->order_group <=> $__Context->b->order_group;

}

?>

 

 

이때 캐시파일의 매개변수가 객체로 바뀌어서 오류가 나는데요. 해결 방법이 있을까요?

ehii Lv. 2

댓글 2

  • 16시간 전 #1913003

    달러 기호를 이스케이프해 주셔야 합니다.

    function val_sort(\$a, \$b) { ...

     

    해당 내용을 그대로 출력하려는 것이 아니기 때문에 @verbatim은 필요없습니다만,

    @verbatim의 의미를 확장해서 PHP 변수도 변환하지 않도록 한다면 편리하지 않을까 하는 생각도 드네요.

  • 16시간 전 #1913009

    감사합니다!