> 백엔드 개발 > PHP 튜토리얼 > THinkPHP 역사상 가장 포괄적인 사용 경험과 기술, 매뉴얼보다 사용하기 쉽습니다.

THinkPHP 역사상 가장 포괄적인 사용 경험과 기술, 매뉴얼보다 사용하기 쉽습니다.

WBOY
풀어 주다: 2016-07-25 09:03:20
원래의
1292명이 탐색했습니다.
THinkPHP 역사상 가장 포괄적인 사용 경험과 팁, 매뉴얼보다 사용하기 쉽습니다. 지나치시면 놓치지 마세요.
THinkPHP 사용 경험 및 기술 요약(1) http://www.jb100.net/html/content-28-475-1.html
THinkPHP 사용 경험 및 기술 요약(2) http://www.jb100.net/html/content-28-477-1.html
THinkPHP 사용 경험 및 기술 요약(3) http://www.jb100.net/html/content-28-479-1.html
THinkPHP 사용 경험 및 기술 요약(4) http://www.jb100.net/html/content-28-248-1.html

역사상 가장 포괄적인 THINKPHP 사용 기술입니다. 매뉴얼보다 사용하기 쉽고, 특히 초보자에게 적합합니다.

약속:
1. 모든 클래스 라이브러리 파일은 파일 접미사로 .class.php를 사용해야 하며, 클래스 이름과 파일 이름은 일관성이 있어야 합니다.
2. 컨트롤러의 클래스 이름 뒤에 Action
이 붙습니다. 3. 모델의 클래스 이름에는 Model이라는 접미사가 붙으며, 클래스 이름의 첫 글자는 대문자로 표기해야 합니다
4. 데이터베이스 테이블 이름은 모두 소문자입니다.

예:
데이터 테이블 이름: prefix_table 이름
모델 클래스 이름: 테이블 이름 모델 참고: 여기서 테이블 이름의 첫 글자는 대문자여야 합니다.
객체 생성: D('테이블 이름') 참고: 여기서 테이블 이름의 첫 글자는 대문자여야 합니다.

컨트롤러 클래스 정의
클래스 IndexAction은 Action을 확장합니다.{
공개 기능 표시(){
echo '새로운 쇼 운영입니다';
}
}
그런 다음 브라우저에
를 입력하세요. http://localhost/myApp/index.php/Index/show/

모델 클래스 정의:
클래스 테이블 이름 Model 확장 Model{
[//필드 수동 정의 [선택 사항]
보호된 $필드 = 배열(
'이드',
'사용자 이름',
'이메일',
'나이',
'_pk'=>'id', //기본 키
'_autoInc'=>true //자동 증가 여부
)
]
}

기록된 변경사항:
$User = D("User") // 사용자 개체 인스턴스화
$User->find(1) // ID가 1인 레코드를 찾습니다
$User->name = 'ThinkPHP' // 찾은 레코드의 이름 필드를 ThinkPHP로 수정
$User->save() // 수정된 데이터 저장
특정 필드의 값 업데이트
$User->setField('name','TopThink','id=1')
필드 작업도 지원 가능
$User->setField('점수','(점수 1)','id=1')

새 레코드 만들기, 방법 1:
$User = new UserModel() //사용자 개체 인스턴스화
$User->필드 이름 = 필드 값 //필드에 값 할당
$User->add() //기록 추가
새 레코드 만들기, 방법 2:
$data['필드 이름'] = 필드 값; //필드에 값 할당
$User = D('User'); //사용자 개체 인스턴스화
$User->add($data); //$insertId, Add 메소드의 반환 값은 직접 얻을 수 있는 최근 삽입된 기본 키 값입니다.
여러 레코드 추가:
$User = 새로운 UserModel()
$data[0]['name'] = 'ThinkPHP'
$data[0]['email'] = 'sjolzy@chen.com'
$data[1]['name'] = '덧없는 세월'
$data[1]['email'] = 'chen@sjolzy.cn'
$User>addAll($data)

기록 삭제
$User->찾기(2)
$User->delete() // 찾은 기록을 삭제합니다
$User->delete('5,6') // 기본 키 5와 6이 있는 데이터 삭제
$User->deleteAll() // 쿼리된 데이터 모두 삭제

쿼리녹화

$User->getDbFields() //현재 데이터 필드 가져오기
$User->findAll(); //모든 기록 찾기
$User->findAll('1,3,8') //기본 키가 1,3,8인 레코드 세트를 쿼리합니다
$User->count() // 레코드 수를 가져옵니다
$User->max('score') // 사용자의 최대 점수를 구합니다
$User->min('score','score>0') // 포인트가 0보다 큰 사용자의 최소 포인트를 구합니다
$User->avg('필드명') //모든 레코드의 필드값 평균을 구합니다
$User->sum('필드 이름') // 통계 필드 값
$User->getN(2,'score>80','score desc') // 조건을 만족하는 2번째 레코드를 반환
$User->getN(2,'score>80','score desc') //마지막 두 번째 기록도 얻을 수 있습니다
$User->first('score>80','score desc') //첫 번째 레코드를 쿼리하려면
을 사용할 수도 있습니다. $User->last('score>80','score desc') // 마지막 기록 가져오기
$User->top(5,'','score desc') // 가장 높은 점수를 받은 상위 5개 레코드를 가져옵니다
$User->getBy('name','liu21st') //필드 값에 따른 레코드 조회

$Model = new Model() // 어떤 데이터 테이블에도 해당하지 않는 모델 객체를 인스턴스화합니다
$Model->query("상태=1인 think_user에서 * 선택")

$objrs = $Model->query("select * from think_user where status=1") //사용자 정의 쿼리
$Model->execute("update think_user set name='thinkPHP' where status=1") //데이터 업데이트 및 쓰기에 사용되는 SQL 연산, 영향을 받은 레코드 수 반환

$User->startTrans() // 거래 ​​시작
$User->commit() // 트랜잭션 커밋
$User->rollback() // 트랜잭션 롤백

템플릿:

$this->할당('name',$value); //템플릿 변수에 값을 할당하려면 Action 클래스의 할당 메서드를 사용합니다.

$this->display() // 출력 템플릿 파일

일괄 할당
$array['name'] = 'thinkphp'
$array['email'] = 'chen@sjolzy.cn'
$array['phone'] = '12335678'
$this->할당($array)

$this->display() // 사용자 모듈의 읽기 작업 템플릿을 호출합니다
$this->display('edit') // 사용자 모듈의 편집 작업 템플릿을 호출합니다
$this->display('Member:read') // Member 모듈의 읽기 작업 템플릿을 호출합니다
$this->display('Xp@User:edit') // Xp 테마 사용자 모듈의 편집 작업 템플릿을 호출합니다
$this->display('../Member/read.html') // 템플릿 파일의 전체 이름을 직접 지정

템플릿 태그:

{ } 또는 {//댓글 내용 } //템플릿 댓글
{$user['name']} //배열 변수 출력
{$user:name} //객체 속성 출력

템플릿 정의를 용이하게 하기 위해 출력 템플릿 변수가 배열이든 객체이든 상관없이 다음과 같은 통일된 방식으로 출력할 수 있습니다.
{$user.name}
다차원 배열 또는 다층 객체 속성의 출력인 경우 다음 정의 방법을 사용하십시오.
{$user['sub']['이름']}
{$사용자:하위:이름}

사용 기능:
형식: {$varname|function1|function2=arg1,arg2,###}
설명:
{와 $ 기호 사이에는 공백이 있어서는 안 되며, 다음 매개변수에서는 공백이 있어도 문제가 없습니다.
###템플릿 변수 자체의 매개변수 위치를 나타냅니다
. . . . . . . . . . . . .

말이 너무 많아서 제 경험과 기술 중 일부만 소개합니다. 더 흥미로운 공유 URL은 다음과 같습니다.

THinkPHP 사용 경험 및 기술 요약(1) http://www.jb100.net/html/content-28-475-1.html
THinkPHP 사용 경험 및 기술 요약(2) http://www.jb100.net/html/content-28-477-1.html
THinkPHP 사용 경험 및 기술 요약(3) http://www.jb100.net/html/content-28-479-1.html
THinkPHP 사용 경험 및 기술 요약(4) http://www.jb100.net/html/content-28-248-1.html



원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿