[php 8.4] MyClass()->method() 를 이제 괄호없이 사용 가능해요

 

[code]

// 괄호를 사용한 기존 방식 
$request = (new Request())->withMethod('GET')->withUri('/hello-world'); 

// PHP Parse error (<= PHP 8.3): syntax error, unexpected token "->" 
$request = new Request()->withMethod('GET')->withUri('/hello-world');
[/code]

 

8.4 부터 아래와 같은 표현이 가능합니다.

[code]

var_dump(

new MyClass()::CONSTANT, // string(8) "constant"

new MyClass()::$staticProperty, // string(14) "staticProperty"

new MyClass()::staticMethod(), // string(12) "staticMethod"

new MyClass()->property, // string(8) "property"

new MyClass()->method(), // string(6) "method"

new MyClass()(), // string(8) "__invoke"

);

[/code]

 

참고(영문): https://laravel-news.com/php-8-4-class-instantiation-without-extra-parenthesis 

|

댓글 3개

감사 합니다.

오! 많이 발전 됐군요 좋은 지식 감사합니다

댓글을 작성하시려면 로그인이 필요합니다.

영카트5 팁자료실

+
제목 글쓴이 날짜 조회
8개월 전 조회 1,009
8개월 전 조회 725
10개월 전 조회 1,318
10개월 전 조회 969
11개월 전 조회 942
1년 전 조회 1,323
1년 전 조회 1,506
1년 전 조회 913
1년 전 조회 1,694
1년 전 조회 1,144
1년 전 조회 1,219
1년 전 조회 2,765
1년 전 조회 1,855
1년 전 조회 3,293
1년 전 조회 1,193
1년 전 조회 3,423
1년 전 조회 1,683
1년 전 조회 1,057
1년 전 조회 761
1년 전 조회 1,281
1년 전 조회 3,019
1년 전 조회 1,092
1년 전 조회 1,357
1년 전 조회 787
2년 전 조회 8.6만
2년 전 조회 1,147
2년 전 조회 2,856
2년 전 조회 1,093
2년 전 조회 2,147
2년 전 조회 2,214