it-swarm-ko.tech

사용자 정의 모듈 변수 이름에 대한 모범 사례?

이제 모듈에 대해 매우 강력한 구성 창을 수행하는 습관이 생겼으며 변수 이름 및 관리가 꽤 고통 인 것을 찾고 있습니다.

mymodule_section_subvar_varname_type_context와 같은 변수가 있고 변수 이름에있는 요소의 순서를 잃어 버릴뿐만 아니라 긴 변수 이름이 디자인 결함 인 것처럼 느낍니다.

해당 배열을 쉽게 유지 관리 할 수 ​​있도록하는 함수 집합과 함께 변수 mymodule_section_settings에서 직렬화 된 배열을 사용하는 것을 고려해 왔지만 모범 사례가있는 경우 몇 가지 입력을 원합니다. 우리가 신뢰하는 모듈의 접두사 및/또는 예제와 대규모 변수 집합에 대해 수행하는 작업 외부에서 설정됩니다.

감사!

8
electblake

Drupal 변수를 사용하여 배열을 포함 할 수 있습니다. 즉, Drupal 코어 모듈도 마찬가지입니다 ( book_type_is_allowed ())) 참조 ).

단일 Drupal 변수를 사용하여 모듈에서 사용하는 다른 설정을 배열에 포함 할 수 있습니다. 형식 #tree 속성은 추가 코드를 작성하지 않고도 배열을 Drupal 변수에 저장하기 위해 system_settings_form () 을 사용할 수 있습니다. 코드 직렬화 해제는 자동으로 직렬화됩니다. Drupal Drupal 변수를 처리하는 핵심 함수) ( variable_set () ) 코드 참조)).

질문은 다음과 같습니다. 단일 Drupal 변수를 사용하여 다른 설정을 포함해야하는 경우?) 함수 또는 함수 그룹에서 사용하는 설정에 단일 변수를 사용합니다. 배열에는 (예를 들어) 10 개의 다른 함수에서 사용하는 값이 포함되어 있지만 해당 함수는 해당 배열에서 단일 값 (또는 두 개의 값)에 액세스하므로 설정에 단일 영구 변수를 사용하지 않습니다.

7
kiamlaluno

설정 집합이 관련되어 있으면 배열에 넣는 것이 좋습니다. 예를 들어 several variable_get는 순차적입니다. 잠재적으로 약간 더 빠를뿐만 아니라 약간의 유연성을 제공합니다.

그러나 이것은 다른 프로그램이 drush vset 또는 strongarm과 같은 것을 통해 수동으로 설정을 편집하는 것을 어렵게 만듭니다. 이러한 경우 긴 변수 이름이 실제로 도움이 될 수 있습니다.

2
Jeremy French