XETOWN

질문/답변

웹에 관련된 질문과 답변을 나눌 수 있습니다.

core/classes/context/Context.class.php 파일내에 1920 줄 근처에 있는 

function get($key)
{
    is_a($this, 'Context') ? $self = $this : $self = self::getInstance();
    if(!isset($self->context->{$key}));
    {
        return null;
    }
    return $self->context->{$key};
}

이 코드에서 ->{$key} 이 부분이 설명돼있는 레퍼런스좀 알려주시면 감사하겠습니다.

구글에서 아무리 찾아도 저 부분에 대한 내용은 없는것 같더라구요. " " (큰따옴표) 내에서 "{$var}" 이런식으로 사용하면 그 var 변수 내에 있는 값이 출력되는건 알겠는데 저런식으로 사용하는건 처음보거든요..ㅠ

부디 고수님들 부탁드립니다.

 

 

  • profile
    기진곰 2016.08.11 22:20:36

    $self는 객체입니다.

    $self->context는 $self의 속성 중 하나이고, 이것도 객체입니다.

    $self->context->example 이런 식으로 context의 속성을 가져올 수 있겠죠?

     

    그런데 저 함수에서는 가져올 속성의 이름이 정해져 있지 않고 $key의 값에 따라 달라져야 합니다.

    $self->context->{$key} 라고 하면 $key의 값에 해당하는 속성을 가져오게 됩니다.

    이미 알고 계신 문자열 치환과 비슷한 기능이예요.

     

    예:

    $self->context->example = 123;

    $key = "example";

    echo $self->context->{$key};

    이렇게 하면 123이 출력됩니다.

  • ?
    갸라 2016.08.11 23:03:14
    아.. 그렇군요!! 정말 감사합니다ㅎㅎ 구글에 아무리 찾아도 안나오더라구요..ㅠ
    그리고 혹시 php online manual 에서 어디로 들어가야 영문 레퍼런스를 볼 수 있는지 아시나요??
  • profile
    기진곰 2016.08.11 23:24:39

    https://secure.php.net/manual/en/index.php

  • ?
    갸라 2016.08.11 23:36:50

    아 제가 질문을 조금 헷갈리게 적어놓았네요..

    답변해주신 내용이 php online manual에서 어디에 있는지 궁금했었습니다ㅎㅎ

  • profile
    기진곰 2016.08.12 00:00:54

    https://secure.php.net/manual/en/language.variables.variable.php


위로
서버에 요청 중입니다. 잠시만 기다려 주십시오...