개발 꿀팁/PHP

ThinkPHP 프레임워크 사용 빠른 사이트 개발(멀티맵)

Jammie 2022. 7. 8. 11:40
반응형

ThinkPHP 프레임워크로 빠른 사이트 구축


이번 주 내내 실험실로 바빴어요웹사이트, 기본 기능이 완성된 셈이다.그나마 씽크PHP 프레임을 대강 알아본 게 수확이다.기념으로 쓸 것을 써라.같은 웹 초보자인 당신에게 조금이라도 도움이 된다면 더욱 좋을 것이다.

옛날에 PHP로 해서 되게 어설프게 했었는데발의 사이트, 왜 그런 말을 하는 거죠? 다 데드코드로 돼 있거든요.하고 나니 너무 힘들어서 앞부분은 div+css, js 뒷부분은 php, mysql. 이렇게 많은 걸 해야 하니 머리가 아프다.그래서 홈페이지 미션을 받고는 꼭 써야겠다는 생각을 했어요.프레임을 개발해서 하는 것이지, 결코 예전처럼 그렇게 피곤해서는 안 된다.

제가 선택한 것은 PHP의 Thi입니다nkPHP 프레임.솔직히 괜찮은 것 같아요.순간 웹 개발은 효율적이라는 생각이 들었다.

하이퍼링크: ThinkPHP중국어 인터넷


방법에 따라 먼저 실험 환경을 붙인다

1. WAMP(통합된 타입으로 가장 이지적인 구성은 거의 필요 없음)
2. ZendStudio7.2 (중국어 URL http://w)ww.zendstudio.net/, 다운로드, 온라인 등록기 및 튜토리얼 이용 가능)
3. ThinkPHP 프레임워크 + 바이두 UEditor 편집기 플러그인
4. Win7-64bit 운영체제
5. 브라우저(불여우, IE, 크롬), 불여우 Fire버그 플러그인은 디버깅과 스타일 훔치기에 사용됩니다

제1단계: 웹페이지 템플릿을 찾습니다(미공, PS, 양해를 구할 수 없습니다.

앞 페이지 대학 실험실을 찾고 있는데요.여기 안 붙어요. 아주 평범한 거.백그라운드에서 직접 다운로드한 템플릿이 정말 예쁜 것 같습니다. 실행 후 아래 그림과 같이:

2단계: 바이두 UEditor 플러그인 초보 보기

내가 하려는 것은 실험실의 웹사이트이기 때문이다.실험실 웹사이트의 주요 내용은 다음과 같다.

실험실 멤버를 소개합니다
실험실의 프로젝트, 성과 등
실험실의 뉴스 및 학술 교류 정보

백그라운드 뉴스, 기사 정보 배포에 치중하는 반면 프런트 데스크는 편집이 거의 없는 것으로 나타났다.그래서 백그라운드에서 편리한 글쓰기 시스템을 구현하는 것이 포인트입니다.

바이두에서 출품한 유디터 소견 편집기를 골랐다.주로 JS에서 이루어졌는데, 백스테이지로 통합하면 다음과 같이 기능이 정말 많습니다

UEditor의 홈페이지 통합 방법에 대해서는 UEditor 홈페이지를 참고하시기 바라며 자세한 튜토리얼이 포함되어 있습니다.





Step3. ThinkPHP 프레임워크 초식



다음은 ThinkPHP 프레임을 소개하겠습니다. 먼저 감성인식 강화를 위해 ThinkPHP 공정을 살펴보겠습니다.의 디렉터리 구조:

폴더:

admin은 백그라운드 프로젝트 폴더입니다
홈은 프런트 엔지니어링입니다
public에서 CSS 파일 저장, JS문서 및 웹 페이지의 그림영화
ThinkPHP 프레임
ueditor는 바이두 에디터입니다

다음 세 개의 PHP 파일:

admin.php는 후대만 프로젝트의 입구 문서,
index.php는 앞대만 공사의 입문서.
config.inc.php, 이 작은 항목의 거의 모든 데이터를 세어 놓기 때문에창고에 따르면, 앞뒤 대는 모두 데이터베이스에 접속해야 하기 때문에, 모든 것이다.데이터베이스 설정 코드는 그 안에 있다.
그리고 나머지 buildp는ath,.settings,.project는 Zend IDE에서 생성되었습니다. 상관 없습니다.。

저는 이 안에 실제 두 개의 프로젝트(홈과 admin)가 있기 때문에 그 중 하나만 이해하면 되기 때문에, 그 아래는 백스테이지, 즉 admin 부분만 소개하겠습니다.



이어 아래를 내려다보며 admin.php 파일을 살펴보니 첫 번째 파일인 백스테이지의 입구 파일이었다.

몇 가지 매크로 정의는 다음과 같습니다.

1. ThinkPHP 프레임의 경로
2. 백그라운드 프로그램카테고리
3. 백그라운드 프로그램이름
4. 디버깅 모드 켜기
5. Thin 포함kPHP 틀에 있는 ThinkPHP.php 문건(중요!)


아래에 새로 작은 공사를 해서 시범을 보이다.다음 개발 과정:

예를 들어 전체 공정의 큰 목록은 x이다.xx, 그리고 ThinkPHP 프레임을 복사해서,admin.php 파일을 추가합니다.위의 그림의 코드)

브라우저에 http://localhost/xxx/admin.php 를 입력하면 다음 그림과 같이 admin 디렉토리가 자동으로 생성됩니다

admin 디렉토리를 엽니다. 내용은 다음과 같습니다

주로 네 개의 폴더에 초점을 맞춥니다.

1. Conf 보관프로젝트 프로파일(예: 상수 정의 등)

2. Lib (리브)가장 중요! MVC 모드에서 모델 및 컨트롤러 클래스 저장)

3. Tpl(보관형)보드 파일, 이치대로라면 우리가 다운로드한 템플릿은 여기에 놓아야 한다.)

4. 런타임(캐시나 데이터베이스 테이블 캐시와 같은 런타임 파일 저장)



마지막으로 브라우저의 실행 결과를 게시합니다.늦게 붙여 죄송합니다

위에 화면이 뜨면 씽크PHP가 정상적으로 작동한다는 뜻이다.다음부터는 계속 보완해 나가자

4단계:MVC 모드 초읽기



여기까지, T에서 빼놓을 수 없죠.HinkPHP에 있는 MVC 콘셉트입니다.MVC는 모델-뷰-컨트롤러 모드로 유명하다.



ThinkPHP에서:

모델(Model) 인정 가능데이터베이스 표입니다.내가 할 공사는 다음과 같다.

한 편의 문장(뉴스)에 대하여속성에는 ID 번호, 제목, 작성자, 작성 시간, 마지막 수정 시간, 글 내용이 포함됩니다.이것이 바로 글의 모형이다.그리고 그 생각대로해당하는 데이터베이스 테이블 만들기:

뷰(View)는 사용자가 보는 것, 즉 템플릿, 즉 피부라고 생각할 수 있다.

예를 들어 앞에 붙이는 백그라운드 템플릿, 그것이 씽크PHP 개념에서 뷰다.



컨트롤러(Action)는 뷰와 모델 이전의 다리라고 생각할 수 있습니다.홈페이지에 게시된 내용은 기본적으로 수많은 모델들(데이터베이스 테이블들)에서 나오고 컨트롤러가 담당하는 것이 결정적이기 때문이다.어떤 상황에서 어떤 모델의 어떤 데이터를 표시할 지 결정한다.아니면 제 예를 들면, 제 백그라운드 프로젝트의 첫 페이지에 해당하는 컨트롤러가 Index 컨트롤러입니다.(Index 컨트롤러는 모든 공정의 기본 컨트롤러입니다.)하지만 웹 사이트의 첫 화면에는 보통 많은 단추나 하이퍼링크나 뭐 그런 것들이 있고 다른 곳으로 점프할 수 있는 것들이 있다고 생각합니다.스티커 사진:

이것은 나의 백스테이지 첫 페이지이다.왼쪽에는 내비게이션 바, 오른쪽 아래에는 현재 데이터베이스(DB)에 나와 있는 글의 정보를 볼 수 있으며 총 3개의 글을 볼 수 있다.예를 들어, 나는 지금 하고 싶을지도 모른다.



1. 글 '1111 테스트 글 게시 시스템' 삭제

2. "제임스 3번째 MVP 트로피 높이 받든다"는 글에서 "제임스 4번째 MVP 트로피 높이 받든다"로 변경

3. 다른 문장을 새로 추가하다



이것은 Index 컨트롤러의 다른 기능, 즉 Index 컨트롤러 클래스 IndexAction의 다른 방법(예를 들어 이름 edit() 측)에 대응합니다.법,delete()방법,add()방법).물론 보이는 건페이지가 나타납니다. 기본적으로 d를 호출하는 Index 컨트롤러의 Index() 메서드가 실행되기 때문입니다.isplay() 메서드 보기 템플릿기본 파일을 볼 수 없습니다. Index 컨트롤러의 Index 메서드를 통해 HelloThinkPHP의 환영 페이지를 볼 수 있습니다.



예:

IndexAction 디렉터리는 다음과 같습니다.

/xxx/admin/Lib/Action/IndexAction.class.php

내용은 다음과 같습니다.

보이시죠, 기본적으로 index 메서드에서 $this->display() 호출됩니다

(IndexAction이 Action 클래스를 상속합니다. Display 방법은 Actio입니다.n종류의 방법)

Display() 메서드를 호출하면 ThinkPHP는 해당 프로젝트의 Tpl 폴더 아래에 Ind가 됩니다.ex파일 아래에서 index.html 파일을 찾습니다.이전 Index 폴더는 Index 컨트롤러, inde에 해당합니다.x.html는 index() 방법에 대응한다.

따라서 컨트롤러 클래스는 템플릿 폴더를 지원합니다.몇 개의 템플릿과 몇 개의 컨트롤러 클래스에 대응하는 방법 및디스플레이가 필요한 방법은 몇 가지다.

따라서 이 때 지원되는 템플릿 파일 경로는 다음과 같습니다.

/xx/admin/Tpl/Index/index.html





세심한 친구가 물어봐야 할 것 같아요. 보기(템플릿)와 컨트롤러만 얘기했어요. 모델은요?당신은 데이터를 어떻게 아나요?쿠리의 그 세 글의 메시지는?사실 그렇지 않습니다. 저는 index 방법 안에서 또 몇 가지 일을 했습니다. 아래 그림은 축소판 index 측입니다.법

첫 번째 단계에서 나는 모델을 인스턴스화했다.모델명은 Article입니다. 모델명칭은 데이터베이스 테이블입니다. 어떤 데이터베이스 테이블이 있는지 알아봅니다

첫 번째 테이블 이름은 think_article이고 접두사 think_가 하나 더 부족한 것을 알 수 있습니다. 사실 이것은 프로필에 지정되어 있습니다. 앞에서 서술한 config.inc.php 기억하시나요? 구성 코드는 다음과 같습니다.

<?php

return array(

     'DB_TYPE'              =>'mysql',

     'DB_HOST'             =>'localhost',

     'DB_NAME'            =>데이터베이스 이름,

     'DB_USER'             =>아이디,

     'DB_PWD'              =>비밀번호,

     'DB_PORT'             =>'3306',

     'DB_PREFIX'           =>'think_',

);

?>

두 번째 문구는 데이터베이스 조회다.ThinkPHP는 데이터베이스를 조회하는 여러 가지 방법을 제공하고 있으며, 저는 일관성 있는 조작법을 사용하고 있습니다.

두 번째 문장을 실행한 후 $new_list 변수는 모든 문장의 정보를 저장하는데, 이를 어떻게 인터페이스에 표시합니까?



세 번째 문장을 보면, 이 변수를 'new_list'라는 변수에 할당한다(동명인 것 같다.하지만 괜찮아요, 관건은 assign 방법)입니다. 그리고 템플릿 파일 안에서 바꾸면 됩니다.기본적으로 HTML로 쓰기 {$new_list}이면 OK.물론 여기서 new_list는 단순한 숫자나 문자열이 아닌 복합 변수다.하지만 씽크PHP는 여러 가지 순환 방법을 제공해줘 편리하다.



마지막 문장은 대응하는 뷰파일을 표시하는 것이다.데이터베이스 내의 문장 정보를 뷰(템플릿)에서 정의한 대로브라우저에 나타납니다

.소스 다운로드

마지막으로 예시 공정 xxx의 소스 코드를 제시한다.필요한 친구가 있으면 다운로드 받을 수 있어 씽크PHP의 대략적인 원리를 빠르게 이해할 수 있다.



소스 기능:

1.백그라운드 관리자 로그인
2.글 추가,글 편집,글 삭제
3. 프런트 데스크 디스플레이 글

사용 방법:

1.웹 사이트 루트 아래에 압축을 푸십시오.기본값은 WWW 폴더 아래의 xxx 폴더입니다.

2.MySQL에 새로운 데이터베이스, 예를 들어 rubydb, utf8-genaral-ci로 정리


3. 데이터베이스 테이블 폴더 아래에 있는 두 데이터베이스 테이블 가져오기 think_article과 think_user,가져온 다음 그림 가져오기

4.Config.inc.php 파일 설정

<?php 
return array(
	'DB_TYPE'			=>	'mysql',
	'DB_HOST'			=>	'localhost',
	'DB_NAME'			=>	'스스로 데이터베이스를 구축한다' ,//'새 데이터베이스를 구축해야 한다!이름이 뭐냐면
	'DB_USER'			=>	'데이터베이스 사용자 이름' , // 데이터베이스 사용자 이름
	'DB_PWD'			=>	'데이터베이스 비밀번호, // 데이터베이스 로그인 비밀번호
	'DB_PORT'			=>	'3306',
	'DB_PREFIX'			=>	'think_',//데이터베이스 테이블 이름 접두사
);
?>

위의 DB_NAME, DB_USER, DB_PWD는 수정이 필요합니다.
각각

'DB_NAME'=> 'rubydb',

'DB_USER' => '당신의 mysql 로그인 계정',

'DB_PWD'=> '너의 mysql 로그인 비밀번호'



5. http://localhost/xxx/admin.p 실행hp, 백그라운드 로그인 페이지 팝업:

데이터베이스 think_user에 있는 사용자 정보: ruby97, 비밀번호 ruby97을 입력하고 인증번호를 입력하면 로그인이 됩니다

반응형