ThinkPHP+小程序開發

1.服務端 php

ThinkPHP5+MySQL構建REST APIcss

2.客戶端html

向服務端請求數據,完成自身行爲邏輯前端

3.CMSthinkphp

向服務端請求數據,實現發貨與發送微信消息數據庫

同時使用了:AOP面向切面編程思想的應用apache

使用ORM的方式與數據庫交互(Object Relational Mapping)編程

用面向對象的思想構建前端代碼(ES6   Class&Module)json

知識與技術ThinkPHP5小程序

1.Web框架三大核心知識(路由、控制器與模型)

2.驗證器、讀取器、緩存與全局異常處理

3.ORM:模型與關聯模型(模型就是對象)

知識與技術     (微信)

1.微信小程序

2.微信登陸

3.微信支付(預訂單、支付與回調通知處理)

4.微信模板消息

使用的開發工具:phpStudy   PHPStorm     微信Web開發者工具       PostMan      Navicat

ThinkPHP的目錄結構

project  應用部署目錄
├─application           應用目錄(可設置)
│  ├─common             公共模塊目錄(可更改)
│  ├─index              模塊目錄(可更改)
│  │  ├─config.php      模塊配置文件
│  │  ├─common.php      模塊函數文件
│  │  ├─controller      控制器目錄
│  │  ├─model           模型目錄
│  │  ├─view            視圖目錄
│  │  └─ ...            更多類庫目錄
│  ├─command.php        命令行工具配置文件
│  ├─common.php         應用公共(函數)文件
│  ├─config.php         應用(公共)配置文件
│  ├─database.php       數據庫配置文件
│  ├─tags.php           應用行爲擴展定義文件
│  └─route.php          路由配置文件
├─extend                擴展類庫目錄(可定義)
├─public                WEB 部署目錄(對外訪問目錄)
│  ├─static             靜態資源存放目錄(css,js,image)
│  ├─index.php          應用入口文件
│  ├─router.php         快速測試文件
│  └─.htaccess          用於 apache 的重寫
├─runtime               應用的運行時目錄(可寫,可設置)
├─vendor                第三方類庫目錄(Composer)
├─thinkphp              框架系統目錄
│  ├─lang               語言包目錄
│  ├─library            框架核心類庫目錄
│  │  ├─think           Think 類庫包目錄
│  │  └─traits          系統 Traits 目錄
│  ├─tpl                系統模板目錄
│  ├─.htaccess          用於 apache 的重寫
│  ├─.travis.yml        CI 定義文件
│  ├─base.php           基礎定義文件
│  ├─composer.json      composer 定義文件
│  ├─console.php        控制檯入口文件
│  ├─convention.php     慣例配置文件
│  ├─helper.php         助手函數文件(可選)
│  ├─LICENSE.txt        受權說明文件
│  ├─phpunit.xml        單元測試配置文件
│  ├─README.md README 文件 │ └─start.php 框架引導文件 ├─build.php 自動生成定義文件(參考) ├─composer.json composer 定義文件 ├─LICENSE.txt 受權說明文件 ├─README.md README 文件 ├─think 命令行入口文件

1、配置前說明:

一、phpStudy集成了XDebug擴展,因此不用單獨下載XDebug。 
二、打開XDebug擴展:其它選項菜單 > PHP擴展 > Xdebug

2、配置步驟:

phpStudy當前版本:php5.5

修改php.ini文件:主要是phpstudy的這個配置

複製代碼
; 註釋掉原配置
;[XDebug]
;xdebug.profiler_output_dir="D:\myworkVIP\phpstudy\tmp\xdebug"
;xdebug.trace_output_dir="D:\myworkVIP\phpstudy\tmp\xdebug"
;zend_extension="D:\myworkVIP\phpstudy\php\php-5.5.38\ext\php_xdebug.dll"
;zend_extension="D:\myworkVIP\phpstudybak\php\php-5.5.38\ext\php_xdebug.dll"

; 自定義XDebug
[XDebug]
zend_extension="D:\myworkVIP\phpstudy\php\php-5.5.38\ext\php_xdebug.dll"
;是否容許Xdebug跟蹤函數調用,跟蹤信息以文件形式存儲,默認值爲0
xdebug.auto_trace=1
;是否容許Xdebug跟蹤函數參數,默認值爲0
xdebug.collect_params=1
;是否容許Xdebug跟蹤函數返回值,默認值爲0
xdebug.collect_return=1
;函數調用跟蹤信息輸出文件目錄,默認值爲/tmp
xdebug.trace_output_dir ="D:\myworkVIP\phpstudy\tmp\xdebug"
;性能分析文件的存放位置,默認值爲/tmp
xdebug.profiler_output_dir ="D:\myworkVIP\phpstudy\tmp\xdebug"
;打開xdebug的性能分析器,以文件形式存儲,這項配置是不能以ini_set()函數配置的,默認值爲0
xdebug.profiler_enable = 1
;性能分析文件的命名規則,默認值爲cachegrind.out.%p
xdebug.profiler_output_name = "cachegrind.out.%t.%p"
xdebug.remote_enable = 1
;用於zend studio遠程調試的應用層通訊協議
xdebug.remote_handler = "dbgp"
xdebug.idekey = PHPSTORM
xdebug.remote_host = "127.0.0.1"
xdebug.remote_port = 9000

 

兼容性隱藏index.php

<IfModule mod_rewrite.c>
Options +FollowSymlinks
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php [L,QSA,E=PATH_INFO:$1]
RewriteCond %{SCRIPT_FILENAME} \.php [NC]

RewriteCond % !^$
RewriteRule ^/?application/.*\.php - [F]
RewriteRule ^/?backup/.*\.php - [F]
#RewriteRule ^/?install/.*\.php - [F]
RewriteRule ^/?miniapp/.*\.php - [F]
RewriteRule ^/?runtime/.*\.php - [F]
RewriteRule ^/?template/.*\.php - [F]
RewriteRule ^/?vendor/.*\.php - [F]
</IfModule>

Thinkphp5的路由模式
Route::rule('路由表達式','路由地址','請求類型','路由參數(數組)','變量規則(數組)');
use think\Route;
Route::rule('hello','sample/test/hello');
Route::rule('hello','sample/test/hello','GET|POST',['https'=>true]);
Route::get('hello','sample/test/hello');
Route::any('hello','sample/test/hello');
Route::post('hello','sample/test/hello');
Route::delete('hello','sample/test/hello');
Route::put('hello','sample/test/hello');
Route::get('hello/:id','sample/test/hello');

 ThinkPHP5的驗證層

獨立驗證

//須要驗證的數據$data=['name'=>'vendor',    'email'=>'vendor.com'];//驗證規則$validate=new Validate(['name'=>'require|max:3',    'email'=>'email']);//進行驗證:check     批量驗證:batch$result=$validate->batch()->check($data);var_dump($validate->getError());
相關文章
相關標籤/搜索