話題:thinkphp6
- 技術(shù)開發(fā) thinkphp6模板中輸出的html被轉(zhuǎn)義的解決方案
- 在thinkphp5升級(jí)為了thinkphp6后,發(fā)現(xiàn)一些文章內(nèi)頁的富文本區(qū)域直接顯示的是html源代碼,而沒有解析,查看頁面源碼發(fā)現(xiàn)html是被轉(zhuǎn)義成實(shí)體了。如圖所示: 雖然內(nèi)容本身在數(shù)據(jù)庫存儲(chǔ)的時(shí)候是被轉(zhuǎn)成實(shí)體了,但是在輸出給模板前已經(jīng)通過htmlspecialchars_decode處理了...
2022-09-16 23:41 查看(16425)
- 技術(shù)開發(fā) thinkphp6中insert方法不返回自增ID?數(shù)據(jù)庫操作變動(dòng)之insert
- 通常有這樣一個(gè)需求:發(fā)布一篇帖子,帖子中包含一些圖片等附件,所以在數(shù)據(jù)結(jié)構(gòu)上面需要把附件表和帖子表關(guān)聯(lián)起來;在發(fā)布帖子的時(shí)候先插入帖子表,返回帖子的id,然后再插入附件表記錄(使用帖子id關(guān)聯(lián)起來)。這樣的需求就需要先插入A表得到其自增的id號(hào),然后再插...
2022-09-16 15:56 查看(9763)
- 技術(shù)開發(fā) thinkphp6數(shù)據(jù)庫查詢數(shù)組批量表達(dá)式條件調(diào)整問題
- thinkphp框架的Db類支持?jǐn)?shù)組批量查詢,如通過兩個(gè)字段來查詢(status和catid),我們可以這樣寫查詢語句: $map['status'] = 1; $map['catid'] = 1; Db::name('posts')->where($map)->select(); 最終生成的sql語句是(假設(shè)數(shù)據(jù)表前綴為jp_,下同): SELECT * ...
2022-07-12 10:59 查看(9850)
- 技術(shù)開發(fā) thinkphp6使用invoke或app代替action實(shí)現(xiàn)調(diào)用控制器方法
- 一個(gè)最典型的場(chǎng)景,如在同一個(gè)應(yīng)用(thinkphp5是模塊)下,A控制器有一個(gè)a方法,B控制器的b方法跟a方法類似,這時(shí)候如果要減少代碼的重復(fù),我們可以直接在b方法中復(fù)用a方法的邏輯,最簡(jiǎn)單的邏輯,就是把a(bǔ)、b的調(diào)用的邏輯全部寫到公共應(yīng)用或模塊中。但實(shí)際上即便所有...
2022-07-04 09:59 查看(13567)
- 技術(shù)開發(fā) thinkphp6 session過一段時(shí)間自動(dòng)失效的原因分析
- 由于thinkphp6默認(rèn)是沒有開啟session的,所以默認(rèn)狀態(tài)下session設(shè)置是無效的,所以在此前我們已經(jīng)在微構(gòu)網(wǎng)絡(luò)官網(wǎng)發(fā)布過一篇關(guān)于thinkphp的文章《thinkphp6中使用session設(shè)置無效問題的解決及注意事項(xiàng)》,這篇文章截止目前已經(jīng)有數(shù)百位開發(fā)者瀏覽過,其中有十來個(gè)通過...
2022-06-30 13:05 查看(7065)
- 技術(shù)開發(fā) thinkphp6中不能使用redirect方法進(jìn)行重定向的解決方法
- 在以為的tp版本中,在很多場(chǎng)景需要使用redirect等方法進(jìn)行重定向,但是在tp6版本已經(jīng)默認(rèn)取消了這些方法,原因在于在tp6中think\Controller類取消了,由此導(dǎo)致原來的success、error、redirect和result等方法都被剔除。這一點(diǎn)在tp框架官方文檔的升級(jí)指導(dǎo)篇中有說明: ...
2022-06-09 11:21 查看(13260)
- 技術(shù)開發(fā) thinkphp6幾個(gè)常見數(shù)據(jù)庫操作方法調(diào)整
- 在tp6中,框架對(duì)數(shù)據(jù)庫操作方法相比tp5進(jìn)行了響應(yīng)的調(diào)整,現(xiàn)列舉幾個(gè)常用的數(shù)據(jù)庫操作方法調(diào)整注意事項(xiàng): 1、field方法減少參數(shù),不能過濾設(shè)定的字段,需要使用增加的withoutField方法。 2、剔除setField方法,需要用data或update方法。 3、order方法必須嚴(yán)格使用ord...
2022-06-09 10:31 查看(6138)
- 技術(shù)開發(fā) thinkphp6數(shù)據(jù)庫操作方法field調(diào)整,增加withoutField方法
- 在tp5中,一個(gè)field方法可以實(shí)現(xiàn)tp6中的field和withoutField方法的功能,在tp5中filed的參數(shù)項(xiàng)如下: /** * 指定查詢字段 支持字段排除和指定數(shù)據(jù)表 * @access public * @param mixed $field * @param boolean $except 是否排除 * @param string $tableName 數(shù)據(jù)表名...
2022-06-09 10:19 查看(8340)
- 技術(shù)開發(fā) thinkphp6中使用助手函數(shù)config相比tp5的調(diào)整
- config方法用于設(shè)置項(xiàng)目的全局配置項(xiàng)(比如網(wǎng)站的名稱等一些基本設(shè)置可以用這個(gè)方法設(shè)置),在tp5中,可以直接設(shè)置一個(gè)數(shù)組到config中,然后依次調(diào)用即可。但在tp6中,在使用config取配置數(shù)據(jù)的時(shí)候,必須使用二級(jí)鍵值的方式,也就是寫入數(shù)據(jù)的時(shí)候必須是寫入多級(jí)數(shù)...
2022-06-09 10:00 查看(9267)
- 技術(shù)開發(fā) thinkphp6中使用session設(shè)置無效問題的解決及注意事項(xiàng)
- 就如thinkphp官方在文檔開頭所描述的一樣,ThinkPHP6.0基于精簡(jiǎn)核心和統(tǒng)一用法兩大原則在5.1的基礎(chǔ)上對(duì)底層架構(gòu)做了進(jìn)一步的優(yōu)化改進(jìn),并更加規(guī)范化;其實(shí)從5.x版本開始thinkphp本身就是為api應(yīng)用而生。特別是在6.0版本開始框架默認(rèn)壓根不開啟和提供模板引擎,需要下...
2022-05-27 18:27 查看(11491)
- 技術(shù)開發(fā) thinkphp6通過param、get等獲取參數(shù)時(shí)多了一個(gè)url key解決方案
- 把某個(gè)基于thinkphp5.0的項(xiàng)目遷移到thinkphp6,發(fā)現(xiàn)很多后臺(tái)提交環(huán)節(jié)都報(bào)錯(cuò)了,原因在于進(jìn)行提交的時(shí)候后臺(tái)接收到的參數(shù)多出了一個(gè)url key,而一些簡(jiǎn)單的操作直接把收到的字段更新到數(shù)據(jù)表,就很可能報(bào)數(shù)據(jù)表字段不存在。 對(duì)于post操作,我們可以通過獲取post數(shù)據(jù),...
2022-05-24 13:10 查看(4715)