**2018/12/22 晴 星期六**
初步學習laravel
首先在routes下,web中創建一個路由訪問路徑

```
Route::get('abc', 'abc@index');
//Hello是控制器的名字 index對應到的方法
```
其次在app/http/controllers/邏輯層中寫一個方法

```
<?php
namespace App\Http\Controllers;
use App\Http\Controllers\Pc\CommonController;
class abc extends CommonController
{
public function index()
{
$info = 'Hello World!';
//$pinfo = phpinfo();
return view('abc')->with('info', $info);
//第一個info就是key,第二個就是值上面的$info,這樣這個值就可以顯示在abc.blade.php里面了;如果views里面你還有一層文件夾abc那就寫成view('abc.abc');
}
}
```
注意:use引用一定要對,不然一直是 not found,找不到
第三層也就是視圖展示層,這里只要引用邏輯層中的數據就可以了,引用方法暫時只知道 {{ $info }} 這種

```
{{ $info }}
```
**2018/12/23 晴 星期天**
什么事mvc?
是軟件設計模式.
mvc的工作原理?
url發出請求總入口index.php,帶有模塊名、控制器名、方法名三個參數,index.php接收到三個參數,去請求控制器中的方法,方法中調用M層獲取數據或表操作,傳遞數據給V層,頁面呈現完成或表操作完成。
url …/index.php?m=home&c=news&a=detail&id=5
| |
index.php |
| |
Controllers/News.php/detail |
| |
M V
任何框架都基于MVC軟件設計模板:
## 1.目錄結構:
數據模型類對應的目錄 app/Xxx.php
模板對應的目錄 resource/views/xxx.blade.php
控制器對應的目錄 app/Http/Controllers/XxxController.php
入口文件對應的目錄 public/index.php
配置文件對應的目錄 config/***
系統文件對應的目錄 vendor
路由文件對應的目錄 routes/web.php ???
工作原理:
url地址發出請求,這個請求一定要傳參數,請求被總入口public/index.php響應,找路由文件,匹配路由規則。路由對應的匿名函數或控制器方法被執行,在匿名函數中或控制器方法中請求M層及V層。
## 2、 url地址規則(隨心所欲)
## 3、 路由的編寫 web.php,使用Route這個類,來定義路由規則
Route::get(“路由名稱”,“控制器@方法|匿名函數”);
url請求的方式為get,方法get被執行
Route::post(‘路由名稱’,”控制器@方法|匿名函數”);
url請求方式為post,方法post被執行。
Route::match([‘get’,’post’],’路由名稱’,匿名函數|控制器@方法)
url請方式可以是get及post,match都可以執行
Route::group([‘namespace’=>’Admin’,’prefix’=>’admin’],function(){
Route::get(‘news/add’,””);
})
Route::get(‘路由名稱’,”匿名函數|控制器@方法”)
Route::post(‘路由名稱’,”匿名函數|控制器@方法”)
Route::match([‘get’,’post’],‘路由名稱’,”匿名函數|控制器@方法”)
index.php/news/detail/5
例子:呈現一個文章列表頁面。不用M層。
1、 規定url地址
…/index.php/news/index
2、 寫路由
## 4、 控制器的編寫
1、 放在app/Http/Controllers/XxxController.php
2、 類名和類文件名一致
3、 命名空間 namespace App\Http\Controllers;
4、 可以繼承父類Controller
5、 方法名沒有要求,一般小寫。
控制器方法中接收數據可以使用類Request:

**2018/12/24 晴 星期一**
本地修改SignInController@signIn中APPID與appscret
新增設備歸屬地字段device_address
**2018/12/25 晴 星期二**
要實現獲取手機號碼歸屬地,在app/Http/Controllers/Api/Common/SignInController.php中改寫了登錄,
```
// 請求地址
$url = 'http://mobsec-dianhua.baidu.com/dianhua_api/open/location?tel='.$tel;
// 發起請求
//$res = file_get_contents($url);
$res = curlRequest($url,'','GET');
if ( $res['code'] !== 200 ) return ['code'=>$res['code'],'status'=>false,'msg'=>$res['responseHeader']['msg']];// 判斷請求是否成功
$data = $res['response'][$tel];// 接收返回值
if ( !$data ) return ['code'=>200,'status'=>false,'msg'=>'API Exception!'];// 返回值為空
$response['province'] = $data['detail']['province']; // 歸屬地
$response['city'] = $data['detail']['area'][0]['city']; // 城市
$response['service'] = $data['detail']['operator']; // 運行商
$response['fullname'] = $data['location']; // 運行商全稱
return ['code'=>200,'status'=>true,'data'=>$response];
/**
* 手機號碼格式驗證
* @param $tel
* @return bool
*/
function isPhoneNumber($tel)//手機號碼正則表達試
{
return (preg_match("/0?(13|14|15|17|18|19)[0-9]{9}/",$tel))?true:false;
}
/**
* 發起CURL請求
* @param string $url 請求地址
* @param string $data 請求數據
* @param string $method 請求方式
* @return array 一維數組
*/
function curlRequest($url,$data = '',$method = 'POST')
{
$ch = curl_init(); //初始化CURL句柄
curl_setopt($ch, CURLOPT_URL, $url); //設置請求的URL
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1); //設為TRUE把curl_exec()結果轉化為字串,而s不是直接輸出
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, $method); //設置請求方式
curl_setopt($ch,CURLOPT_HTTPHEADER,array("X-HTTP-Method-Override: $method"));//設置HTTP頭信息
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);//設置提交的字符串
$document = curl_exec($ch);//執行預定義的CURL
$code = curl_getinfo($ch,CURLINFO_HTTP_CODE); //獲取HTTP請求狀態碼~
curl_close($ch);
$document = json_decode(removeBOM($document),true);
$document['code'] = $code;
return $document;
}
/**
* 檢測并移除 BOM 頭
* @param string $str 字符串
* @return string 去除BOM以后的字符串
*/
function removeBOM($str = '')
{
if (substr($str, 0,3) == pack("CCC",0xef,0xbb,0xbf)) {
$str = substr($str, 3);
}
return $str;
}
```
**2018/12/28 陰 星期五 PHP之大坑**
上傳時要修改js請求路徑
APP修改
ysV2ios\js\gologin.js
后臺修改路徑
app/Http/Controllers/Api/Common/SignInController.php
昨天一整天在看到底是PHP是怎么寫入數據庫,正常來說只要是ajax請求,那么data中的參數可隨意命名,

傳到后臺只要獲取在寫進數據庫,

但是一直不對,參數傳到后臺了,就是寫不進數據庫.后來按照數據庫的字段命名參數,居然就對了,而且還寫進數據庫了,不明其意啊,
用戶注冊或登錄時可獲取用戶手機歸屬地與設備ip位置
**2019/1/2 晴 星期六**
修改了后臺用戶管理,resources/views/admin/customer/customerList.blade.php

**### laeavel實用文檔**
2019/1/5 晴
修改加盟商電話 加盟商 tb\_franchisers 添加了電話號 phone
1、修改加盟商電話視圖

2、修改加盟商電話方法

2019/1/8 晴
后臺添加加盟商 在等級價格表 tb\_service\_prices 新增 city\_id 城市字段
1、修改加盟商視圖

2、修改加盟商 ServantLevelController.php 方法

3、修改加盟商 ServicePriceController.php 方法
2019/1/13 晴
月嫂訂單評價聯動
1、添加路由
// 后臺服務訂單和評價關聯起來
Route::get('/service/order/evaluatios/{order}', 'ServiceOrderEvaluationController@Relation');

2、修改訂單視圖

3、admin下修改ServiceOrderEvaluationController.php方法

2019/1/18 晴
訂單根據定位到加盟商城市進行分配 app\\Http\\Controllers\\Api\\Customer\\ServiceOrderController.php

2019/1/23 晴
加盟商修改
1、先在數據庫 tb\_admin\_permissions 中增加加盟商權限

2、添加路由器路徑:\\routes\\home.php

3、添加視圖路徑:resources\\views\\home\\layouts\\frame.blade.php

4、添加app\\Http\\Controllers\\Home\\ServantLevelController.php類

5、添加app\\Http\\Controllers\\Home\\FranchiserController.php類

6、添加視圖文件\\resources\\views\\home\\levelList\\levelList.blade.php

2019/1/26 晴
app中修改電話,加盟商是哪個電話就是那個
1、修改了APP視圖 yuesao\_detail.html

2、增加API路由中新增路由
//獲取加盟商手機號
Route::get('/service-phonee/{yui}', 'ServicePhoneController@showphone');

3、新增了方法 app\\Http\\Controllers\\Api\\Common\\ServicePhoneController.php

4、新增了函數方法 app\\Helpers\\functions.php

5、在模型中 app\\Models\\Franchiser.php 新增了,要注意會不會出問題

2019/1/28 晴
修改了APP列表顯示價格 app\\Repositories\\UserServantRepository.php
//補丁:批量更新 user\_servant\_profiles 表所在省id
//by zgm 2019-1-11
$user\_servant\_profiles\_model\=DB::table('user\_servant\_profiles')
\->where('major\_service\_province',0)
\->where('major\_service\_city','<>',0)
\->where('major\_service\_city','<>',1)
\->get();
foreach ($user\_servant\_profiles\_model as $profiles\_temp) {
//查到省id
$citytemp = DB::table('areas')->where('id', $profiles\_temp\->major\_service\_city)->first();
//執行更新
DB::table('user\_servant\_profiles')
\->where('id', $profiles\_temp\->id)
\->update(\['major\_service\_province' => $citytemp\->parentid\]);
//\\Log::info('更新了用戶:'.$profiles\_temp->real\_name.'城市id'.$profiles\_temp->major\_service\_city.'下面的省id是:'.$citytemp->parentid);
}
//補丁結束
//查詢目的是為了得到省id 開始
$province\_id\_temp\=0;
$franchisers\_model\_temp\=DB::table('franchisers')
\->where('id',$franchiser\_id)
\->first();
if (!empty($franchisers\_model\_temp)) {//如果查出結果
$province\_id\_temp\=$franchisers\_model\_temp\->city\_id;
}
//查詢目的是為了得到省id 結束
$servants = DB::table('user\_servant\_profiles as pro')
\->join('servant\_levels as l', 'pro.servant\_level\_id', '=', 'l.id')
\->join('service\_prices as pri', 'pri.servant\_level\_id', '=', 'l.id')
\->where($where)
\->where('pri.baby\_number', 1)
\->where('pri.servant\_type', $type)
\->where('pri.city\_id',$province\_id\_temp);//后添加的

2019/1/28 晴
修改月嫂內容價格
1、在APP中獲取當前加盟商id

2、在routes\\api.php路由中修改
Route::get('/user/servants/{user}/{city}', 'ServantController@show');

3、修改app\\Http\\Controllers\\Api\\Customer\\ServantController.php方法

4、修改數據庫查詢條件app\\Repositories\\UserServantRepository.php方法

九、登錄修改app\\Http\\Controllers\\Api\\Common\\SignInController.php,修改方法

2019/2/20 晴
修改搜索
app\\Repositories\\UserServantRepository.php

2019/2/26 晴
訂單數據加載到一定數量點不了

住家月子服務(天) 價格是由服務天數乘于一天價格獲取。
證書的
select c.updated\_at,p.employee\_number,p.real\_name,p.contact\_phone,group\_concat(ci.`name`),group\_concat(c.approval\_status)
from tb\_user\_servant\_profiles p,tb\_user\_servant\_credentials c, tb\_servant\_credentials ci
where p.user\_id=c.user\_id and ci.id=c.servant\_credential\_id
GROUP BY p.employee\_number
ORDER BY c.updated\_at DESC
2019/2/26 晴 統一上傳至服務器

- 翼通長租公寓管理系統
- 版本升級
- 操作手冊
- 添加新店
- 給新店分配管理員(店長)
- 新店必須完成的基礎信息
- 常見問題
- 翼通經銷商管理系統
- 版本升級
- 聚源達印刷管理系統
- 0、升級說明及重要問題注意
- 1、訂單狀態說明(兼容老系統)
- 四月顯示之僵尸產品
- 打印
- Html5中localStorage存儲JSON數據并讀取JSON數據的實現方法
- 功能說明
- 2.各種操作說明
- 升級說明
- 物聯網
- CentosARM
- 樹莓派(RPi) CentOS7擴展內存卡剩余空間
- 翼通管理系統快速開發框架LayUI版
- layui模塊使用方法
- 默認顯示自定義排序方法
- linq查詢輸出json小例子
- layui json格式
- treetable借鑒
- layui表單驗證
- layui圖標
- 第一書記信息管理系統
- 多條件查詢搜索
- 年齡計算
- 家庭數據打印
- 數據打印框架
- 后臺處理獲取需打印數據
- js打印方法
- 圖片上傳
- 單圖上傳
- 多圖上傳
- 多圖上傳CSS樣式
- 圖片保存
- 高級大招
- SqlServer
- sqlserver 去重復并查詢的一列數據拼接用逗號隔開顯示
- 修復SqlServer孤立用戶
- VS2017提高開發效率的幾大技巧看過終生受用,錯過繼續盲目忙碌。
- 微信開發
- 微信開發基礎
- 1、微信公眾平臺測試帳號的注冊與使用
- 2、NuGet引用Senparc微信開發類
- 3、微信接入應答問文件
- 微信開發進階
- 1、綁定用戶把openid、用戶頭像、昵稱綁定到數據庫
- 2、阿里大魚發送驗證短信
- 3、測試用戶是否關注公眾號
- 人人商城
- 1、公眾號接入配置
- 2、公眾號支付配置
- 3、手機短信配置
- 4、小程序配置
- 5、店鋪可視化裝修
- 6、三級分銷配置
- MarkDown
- 1、markdown寫流程圖幫助文檔
- 阿里短信
- 常用短信模板
- 中國翼通基類庫
- 一、說明
- 二、基類庫代碼(用法索引)
- 1、阿里大魚短信
- 2、阿里云短信類
- 3、web.config操作類
- 4、字符操作類
- 5、隨機數
- 6、拼音類
- 7、身份證類
- 8、SqlServer數據庫操作sqleasy
- 9、JSON類
- 999、日志調試類
- 10、QRCode生成二維碼
- 11、保存遠程圖片到本地
- 12、Session類
- 13、ip類
- 14、驗證碼
- 15、base64類
- 翼通CMS版本升級
- 昆明市公安局政治部
- 3D打印
- 老撾消費機
- 幫助文檔
- 工作流開發
- 工作流數據庫結構
- 工作流借鑒
- 思想
- 設計工作流要注意的問題
- 編譯錯誤
- 缺少編譯器要求的成員“Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo.Create"
- EasyUI操作例子
- combogrid綁定
- linq
- 建立linqToSqlServer連接
- 公租房管理系統
- 改進升級更新
- 云南民間工藝傳承協會
- 思路
- 問題
- 云南麥根科技有限公司
- 月嫂多APP
- 嫂多點APP
- 管理后臺
- Laravel
- 一、開發環境搭建
- 二、如何正確使用 Composer 安裝 Laravel 擴展包
- 三、修改數據庫連接
- 四、創建一個簡單的Laravel例子
- 五. laravel維護日記
- 六、nginx下偽靜態配置
- 七、增刪查改知識點
- 騰訊借貸反欺詐開發
- ThinkPHP
- 0、ThinkPHP安裝
- 2、Zend Studio 13.6.1 的安裝和破解
- 1、thinkphp自由查詢語句分頁
- 3、thinkphp M R 方法詳解
- 4、前臺循環
- 5、laiui提交表單
- 翼通云官方網站(里面有內容)
- 開發過程中各種問題
- 小鳥云系統的坑
- 更新日志
- 單頁面模板
- 翼通智慧網站策劃
- 4.05到4.10升級
- phpstom
- 一、設置字體、外觀
- 二、phpstom運行php教程
- 三、phpstom debug調試
- 四、PHPStorm 提示502 Bad Gateway
- vscode
- vscode常用插件
- vscode使用git翼通教程
- Git忽略提交規則 - .gitignore配置運維總結
- Git忽略文件不起作用解決方案
- vscode添加新建文件頭部注釋和函數注釋
- git命令
- git命令大全
- vscode每次打開都會覆蓋窗口
- git忽略文件格式
- ios au 更新APP store教程
- iOS APP版本更新升級教程
- 上傳ipa常見錯誤解決方案
- 上傳ipa報錯版本號重復問題解決教程
- hbuider
- Hbuider制作app升級包的簡單辦法 (升級官方提供的案例)
- linux
- wdcp后臺訪問安全設置即限制域名/IP訪問設置及清除方法
- MSSQL數據庫
- 恢復
- SqlServer將沒有log文件的數據庫文件附加到服務器中
- 1、mssql2019報18456不能登錄
- [簡易版]幼兒園新生入學報名管理系統
- 物流園電子出門條系統
- 電腦自選超市開發
- 服務商操作手冊
- 管理員操作手冊
- EcShop
- 一、EcShop5.3升級5.6遇到問題
- 2、ECShop 時間相差8小時、時間不對的問題
- 3、數據庫操作
- 3、嵌入類的方法
- 4、入駐商列表sql