이 글은 주로 thinkphp의 c 메소드의 사용법을 소개하고 있는데, 이제는 모든 사람들과 공유합니다. 도움이 필요한 친구들은 참고할 수 있습니다.
thinkphp를 사용해 본 친구들은 C() 메소드가 사용된다는 것을 알고 있습니다. 전체 프레임워크입니다. C 메소드의 구현은 매우 간단하지만 기능은 매우 강력합니다. 다음은 C() 메소드
1에 대한 자세한 설명입니다. C 메소드
a. 사용자 구성을 로드하고 설정하고 C 함수 내의 정적 변수 $_config에 저장합니다.
b. 사용자 구성 읽기($_congig에서 읽기)
2.
1. 변수 설정 1. 2차원 배열C(array('DB_PASSWORD'=>'root','DB_USERNAME'=>'root'),'DB'); C('DB.USER_NAME','XIAOCHEN);
C('USER_NAME','小陈'); C(array('USER_NAME'=>'chen','USER_HEIGHT'=>'170'));
2.1차원: C('USER_NAME');2차원 배열 : C('DB.DB_PASSWORD');
3. 디버깅 시 모든 구성 정보 보기
C();
3. 저장 방법 및 이유먼저 문제를 살펴보겠습니다. $arr=array('db'=>'mysql','DB'=>'mysql','Db'=>'mysql'); db가 mysql을 가리키는 것을 보니 3개의 저장공간을 차지한다. 프로젝트 개발은 한 사람이 완료하는 것이 아니고, 사람마다 쓰는 습관이 다를 수 있으므로 이런 상황을 피하기 위해 통일된 첨자 전송은 소문자로 한다. (물론 대문자도 가능합니다.) 구성 파일의 배열은 최대 2차원이므로 1차원 배열의 첨자를 소문자로 사용해도 충분합니다
4. 실제 전투에서는 어떻게 사용되나요?php는 배열에서 작동하기가 매우 편리하므로 구성 파일은 일반적으로 구성 파일에 작성되고 배열 형식으로 반환됩니다.일반적인 형식은 다음과 같습니다.
config.php<? return array('DB'=>'mysql',......);
변수를 C에 쓰기 : C(include ' config.php'); 작성 후 C('DB')는
5 값을 얻을 수 있습니다. 작성자가 작성했습니다(2차원 구성을 동적으로 추가하는 새로운 기능)
C(array('name'=>'mysql','password'=>'root'),'db') 执行后array('db'=>array('name'=>'mysql','password'=>root))
코드 예:
function C($name=null,$value=null){ static $_config = array(); if(!is_null($name)){ if(is_string($name)){ if(is_null($value)){ if(!strpos($name,'.')){ $name = strtolower($name); return isset($_config[$name]) ? $_config[$name] : null; }else{ $name = explode('.',$name); $name[0] = strtolower($name[0]); return isset($_config[$name[0]][$name[1]]) ? $_config[$name[0]][$name[1]] : null; } }else{ if(!strpos($name,'.')){ $_config[strtolower($name)] = $value; }else{ $name = explode('.',$name); $_config[strtolower($name[0])][$name[1]] = $value; } return ; } }elseif(is_array($name)){ if(is_null($value)) $_config = array_merge($_config,$name); else{ $_config[$value] = $name; } return ; } }else{ return empty($_config) ? null: $_config; } }
이제입니다. 이 글이 모든 분들의 공부에 도움이 되었으면 좋겠습니다. 더 많은 관련 내용을 보시려면 PHP 중국어 홈페이지를 주목해 주세요!
관련 추천:
ThinkPHP의 R 메소드 예제위 내용은 thinkphp의 c 메소드 사용의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!