저는 이전의 define() 기반 언어/번역 시스템을보다 유연한 것으로 변환하려고합니다. (아마도 JSON 기반이지만 여전히 열려 있습니다).정의되지 않은 PHP 정의?
이 변환의 일부로 수천 개의 문자열이있는 42 개의 .php 파일을 각각의 형식으로 변환해야합니다. 정의 된 문자열 중 일부는 다른 정의를 참조하거나 PHP 코드를 사용합니다. 이 동적 인 동작을 유지할 필요는 없습니다 (어쨌든 결코 동적 인 것은 아닙니다).하지만 변환시 "현재"값을 가져야합니다. 하나는 다음과 같을 수 정의 : 모든 정의하므로
define('LNG_Some_string', 'Page $s of $s of our fine '.LNG_Product_name);
는 하나의 파일을 변환하는 것은 간단하다, 쉽게 인식 'LNG_'접두사가. 하지만 한 번에 42 개를 모두 처리하는 작은 스크립트를 만들고 싶습니다.
이상적으로는 define()의 정의를 해제하거나 재정의 할 수 있지만 간단한 방법은 찾을 수 없습니다. 가능한가요?
또는이 변환을 처리하는 좋은 방법은 무엇입니까? 스크립트는 일회성 일 것이므로 유지 보수가 가능하거나 빠를 필요가 없습니다. 난 그냥 인간의 오류를 피하기 위해 완전히 자동화 싶습니다.
:-) 단지 제안했다 , 정의에 의해 - 그것은 상수가 아니기 때문에 당신은 그것을 '정의 해제'할 수 없습니다 - 그것은 변수입니다. 그리고 PHP는 가변 표기법과 변수로 작업하는 모든 것을 제공합니다. 간단히 말해서, 상수가 필요없는 것 같습니다.이 다중 언어 기능을 수행하려면 배열이 필요합니다. –
@ N.B. 나는 그것을 정확하게하려고 노력하고있다. 나는 상수를 원하지 않는다. 문제는 상수에서 array/do/json/ini/whatever로 한 번 변환하는 것입니다. – Martijn