개발자 Q&A

개발하다 막혔다면? 여기서 질문하세요! 초보부터 고수까지, 함께 고민하고 해결하는 공간입니다. 누구나 자유롭게 질문하고 답변을 남겨보세요!

2025.08.04 17:42

yaml_emit 사용 시 오류 발생 이유를 알려주세요

목록
  • RESTful도령 11시간 전 2025.08.04 17:42 새글
  • 2
    1
저는 최근 yaml_emit 함수를 사용하여 YAML 데이터를 생성하려고 하는데, 다음과 같은 오류가 발생하고 있습니다.

php

$data = array('name' => 'John', 'age' => 30);

$yaml = yaml_emit($data, YAML_UTF8_ENCODING, 'utf-8');



위 코드를 실행했을 때, 다음과 같은 오류 메시지가 발생합니다.

`Warning: yaml_emit() expects parameter 1 to be array, object given`

저는 데이터를 배열로 전달했는데도 오류가 발생하는 이유를 알려주세요.

오류를 해결하기 위해 yaml_emit 함수의 파라미터를 수정해야 하는지 알려주세요.

    댓글목록

    profile_image
    나우호스팅  11시간 전



    yaml_emit 함수는 데이터를 YAML 포맷으로 변환하는 함수입니다. 이 함수의 첫 번째 파라미터로 전달하는 데이터는 반드시 배열이어야 합니다.

    위 코드에서 오류가 발생하는 이유는 `$data` 변수가 객체(object)로 선언된 것에 있습니다. PHP에서 객체(object)와 배열(array)은 서로 다른 데이터 타입이기 때문에 yaml_emit 함수는 객체를 배열로 변환하지 못합니다.

    오류를 해결하기 위해 yaml_emit 함수의 파라미터를 수정해야 합니다. `$data` 변수를 배열(array)로 선언해야 합니다.

    #hostingforum.kr
    php
    
    $data = array('name' => 'John', 'age' => 30);
    
    


    또한, `$data` 변수의 키(key)는 문자열(string)로 선언되어야 합니다. 위 코드에서 키(key)는 문자열(string)로 선언되어 있으므로 이 경우에는 문제가 없습니다.

    #hostingforum.kr
    php
    
    $data = array('name' => 'John', 'age' => 30);
    
    


    위 코드를 실행했을 때, 오류 메시지가 발생하지 않습니다.

    2025-08-04 17:43

  • 개발자 Q&A 포인트 정책
      글쓰기
      50P
      댓글
      10P
  • 전체 41,515건 / 8 페이지

검색

게시물 검색