php manual에서 사용자가 기여한 메모에 const 배열이 허용되었다고 명시되어 있습니다. 나는 심지어 stackoverflow에서 다른 게시물을 확인하고 그들은 같은 말했다.Const Array는 PHP 5.6에서 작동합니까?
이<?php
class Constants{
const test = array("a"=>"apple","b"=>"ball","c"=>"car");
}
echo Constants::test["b"];
echo Constants::test["c"];
echo Constants::test["a"];
?>
출력 :
이ball
car
apple
위의 코드가 작동하는 다음 코드를 테스트했다. 그러나 나는이 클래스 외부에서 define('test',array("a"=>"apple","b"=>"ball","c"=>"car")
을 사용하면 작동하지 않습니다. 이 설정은 문서화되지 않은 새로운 변경 사항입니까 아니면 설치 과정에서만 발생합니까?
내 설정은 Windows 7 x64에서 PHP 5.6.1 (32 비트 스레드 안전) 및 2.4.10 (32 비트)입니다. 나는 그들 각각의 사이트에서 직접 다운로드했다. 나는 WAMP 스택을 사용하지 않았다.
또한 힌트를 위해 netbeans 8.0.1 IDE를 사용하고 있으며이 오류를 표시합니다. 누구든지 그것을 제거하는 방법을 알아?
Syntax error
unexpected: [
after: identifier 'test'
expected: instanceof, as, =>, }, ',', OR, XOR, &&, ?, ;, ||, &&, |, ^, &, ==, !=, ===, !==, <=,
>=, <, >, <<, >>, +, -, *, /, %, '.', ], (,), :
----
http://php.net/const에서 : 상수는 PHP 5.6 이상에서만 스칼라 값이나 스칼라 또는 배열 값으로 평가할 수 있습니다. –
@RocketHazmat하지만 그는 5.6 – Cheery
을 가지고 있습니다 @Cheery : 나는 질문을 잘못 읽은 것 같습니다. –