Q&A

확장 변수 날짜 형식 몇 시간 동안 헤매다 결국 질문해 봅니다.

2023.06.13 11:09
1,642
0
CMS/프레임워크 Rhymix 2.0
개발 언어 PHP 7.4
문제 페이지 주소 비공개 (작성 후 5일 경과)

Screenshot 2023-06-13 at 20.02.06.JPG

 

등록일, 최근 수정일은 게시판 스킨 자체에서 날짜 형식을 저렇게 출력하는 소스가 있는데..

 

사진에 기한이라고 작성되어 있는 날짜는 확장 변수 날짜 입니다.

 

게시판 스킨에서 날짜 확장 변수 출력 되는 부분을 보니

 

{$document->getExtraValueHTML($val->idx)} 이런 형태이더라고요.

 

--

classes/extravar/Extravar.class.php 에서

 

$buff[] =    '  var option = { dateFormat: "yy-mm-dd", changeMonth:true, 

 

부분을 변경해 보기도 하고...

 

--

common/js/plugins/ui/rx_datepicker.js 에서

        dateFormat: 'yy-mm-dd'

 

부분을 변경해 봐도...

 

제가 원하는... 23.06.13. 형태의 날짜 형태는 안나오네요..ㅠㅠ

 

몇시간째 헤매고 있어서 결국 도움 요청해 봅니다.ㅠ

 

라이믹스 엑스이 타운 개발자님 언제나 감사합니다.

 

복 많이 받으세요~!

현님 Lv. 3

댓글 9

  • 2023.06.13 11:18 #1768474

    저걸 코어에서 수정하지말고.. 스킨에서 처리 해보세요..

    <!--@if($val->name == '기한')-->
    {@
    // 2023-01-01
    $date = $document->getExtraValueHTML($val->idx);
    // 2023.01.01
    $date = str_replace('-', '.', $date);
    // 23.01.01
    substr($date, 2);
    }
    {$date}
    <!--@else-->
    원래코드
    <!--@end-->

     

    뭐 대충 이런식으로도 수정이 가능하긴한데.. 보니까 사이트에 날짜 입력을 어떻게 입력 받는지 전부 각각 양식들이 다 다른것 같네요.

     

    아니면 str_replace를 모든 문자 (점이나 -하이픈)를 삭제 하여 숫자만 남긴다음 zdate($date, 'yy.mm.dd');

     

    이렇게 처리 해두 됩니다.

  • 2023.06.13 12:06 #1768482

    람보님 답변 감사합니다~!!!

    덕분에 힌트를 얻어,

    chat.GPT를 이용해 해결 하였습니다.

     

    <!--@if($val->eid=='기한의 확장 변수 ID')-->
    {@
    // 2023-01-01
    $date = $document->getExtraValueHTML($val->idx);
    // 2023.01.01
    $date = str_replace('-', '.', $date);
    // 23.01.01
    $date = substr($date, 2);

    // Convert to yy.mm.dd. format
    $date = zdate($date, 'y.m.d.');

    }
    {$date}

     

    이렇게 해결 했습니다.~!!

     

    감사합니다 람보님!!!!!!!1f495.png

  • 2023.06.13 12:07 #1768486
    // Convert to yy.mm.dd. format
    $date = zdate($date, 'y.m.d.');

    이건 지워두 되지 않나요?
  • 2023.06.13 12:15 #1768489
    말씀하신 내용 지우면 뒤에 23.06.13 형태로 나오고

    그대로 두면 23.06.13. 으로 13뒤에 '.'이 있고 없고 차이가 납니다...^^;;;;
  • 2023.06.13 12:22 #1768498
    zdate 함수를 불필요하게 호출하지 않고 모든 내용에 점을 추가 하는 방식이시라면

    {$date.'.'}

    이런식으로 점만 추가해서 사용할수도 있습니다.
  • 2023.06.13 12:51 #1768502

    Screenshot 2023-06-13 at 21.46.31.JPG

    말씀하신데로 해보니...

    빈값에서 .이 출력 됩니다.....;;;

  • 2023.06.13 12:16 #1768493

    덧붙여 저같은 분들이 혹시나 검색해서 보신다 한다면...

     

    <!--@if($val->eid=='date1' || $val->eid=='date2')-->

     

    코드로 확장 변수를 추가 할 수 있습니다. date1, dat2는 확장 변수 ID 입니다.

  • 2023.06.13 13:52 #1768513
    날짜형 사용자정의의 경우
    getExtraValueHTML 또는 getExtraEidValueHTML 은 YYYY-MM-DD 형으로 출력되고
    getExtraValue 또는 getExtraEidValue 로 출력하면 YYYYMMDD 로 출력됩니다.
    후자를 사용하면 str_replace 자체를 할필요없이 바로 zdate 사용으로 원하는 형태로 출력이 가능하죠.
    그리고 zdate 사용시 Y 대신 y 를 쓰면 년도의 뒷2자리만 나오니까..


    {zdate($document->getExtraValue($val->idx),'y.m.d.')}
    또는
    {zdate($document->getExtraEidValue($val->eid),'y.m.d.')}

    이렇게 한줄로 표현가능할거예요
  • 2023.06.13 14:31 #1768528

    시간내서 소중한 답변 써주셔서 정말 감사합니다.

     

    덕분에 한 줄로 표현했습니다.~~!!!

     

    감사합니다~~~!!!!!1f493.png