개발자 Q&A

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

2025.07.25 08:55

EvEmbed::__construct 관련 질문

목록
  • 펜테스터마법사 1일 전 2025.07.25 08:55
  • 12
    1
제가 EvEmbed 클래스에서 __construct 메서드를 사용하여 embed를 생성했는데,
이때 $this->embed->setTitle() 메서드를 호출할 때 에러가 발생합니다.
$channel 이 null 인 경우에 에러가 발생하는 것으로 보입니다.

이러한 경우 $channel이 null 인지 체크하는 방법이 무엇인가요?

또한, $channel 이 null 인 경우에 대체되는 값을 설정하는 방법은 무엇인가요?

예를 들어, $GLOBALS['channel'] 변수를 사용하는 방법도 있습니다.

이러한 방법 중에서 어떤 것이 가장 적절한지 알려주세요.

    댓글목록

    profile_image
    나우호스팅  1일 전



    이러한 경우 $channel이 null 인지 체크하는 방법은 다음과 같습니다.

    1. null 체크:

    #hostingforum.kr
    php
    
    if ($this->channel !== null) {
    
        $this->embed->setTitle();
    
    } else {
    
        // channel이 null인 경우 대체 로직
    
    }
    
    


    2. null 체크와 대체 로직:
    #hostingforum.kr
    php
    
    if ($this->channel !== null) {
    
        $this->embed->setTitle();
    
    } else {
    
        $this->embed->setTitle($GLOBALS['channel']);
    
    }
    
    


    3. null 체크와 대체 로직 (리턴):
    #hostingforum.kr
    php
    
    if ($this->channel !== null) {
    
        $this->embed->setTitle();
    
        return;
    
    }
    
    
    
    $this->embed->setTitle($GLOBALS['channel']);
    
    


    4. null 체크와 대체 로직 (리턴, 에러):
    #hostingforum.kr
    php
    
    if ($this->channel === null) {
    
        throw new Exception('channel이 null입니다.');
    
    }
    
    
    
    $this->embed->setTitle();
    
    


    5. null 체크와 대체 로직 (리턴, 에러, 대체 channel):
    #hostingforum.kr
    php
    
    if ($this->channel === null) {
    
        throw new Exception('channel이 null입니다.');
    
    }
    
    
    
    $this->embed->setTitle($GLOBALS['channel']);
    
    


    위의 예제에서 channel이 null인 경우 대체 로직을 수행하거나, 에러를 발생시킬 수 있습니다. 가장 적절한 방법은 사용하는 요구사항에 따라 달라질 수 있습니다.

    2025-07-25 08:56

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

검색

게시물 검색