복붙노트

PHP 클래스 인스턴스화. 괄호를 사용하거나 사용하지 않으려면 어떻게해야합니까? [닫은]

PHP

PHP 클래스 인스턴스화. 괄호를 사용하거나 사용하지 않으려면 어떻게해야합니까? [닫은]

저는 항상 생성자 매개 변수가없는 경우 괄호 (중괄호)가 클래스 인스턴스를 만들 때 클래스 이름을 따르고 선택적이며 자신의 개인적인 변덕에 포함 시키거나 제외시킬 수 있다고 가정했습니다.

이 두 문장이 동등했다는 것 :

$foo = new bar;
$foo = new bar();

내가 맞습니까? 아니면 내가 알지 못하는 괄호에 어떤 의미가 있습니까?

나는 이것이 RTM 질문처럼 들리지만, (PHP 전체 OOP 섹션을 포함하여) 잠시 동안 검색을 해왔고 나는 곧장 대답을 찾을 수없는 것처럼 보였다.

해결법

  1. ==============================

    1.그들은 동등하다. 코드 규칙에 따라 코딩하지 않는 경우 더 좋아하는 것을 사용하십시오. 개인적으로, 나는 그것을 내버려두고있다. 그것은 나에게 정말 혼란 스럽기 때문이다.

    그들은 동등하다. 코드 규칙에 따라 코딩하지 않는 경우 더 좋아하는 것을 사용하십시오. 개인적으로, 나는 그것을 내버려두고있다. 그것은 나에게 정말 혼란 스럽기 때문이다.

  2. ==============================

    2.$ foo = new bar ()는 인수를 생성자에 전달하는 경우 $ foo = new bar보다 유용합니다. 예 :

    $ foo = new bar ()는 인수를 생성자에 전달하는 경우 $ foo = new bar보다 유용합니다. 예 :

    class bar {
    
        public $user_id;
    
        function __construct( $user_id ) {
            $this->user_id = $user_id
        }
    }
    

    -

    $foo = new bar( $user_id );
    

    그 외에도 이미 수용된 대답에서 언급 한 바와 같이 차이점은 없습니다.

  3. from https://stackoverflow.com/questions/1945989/php-class-instantiation-to-use-or-not-to-use-the-parentheses by cc-by-sa and MIT license