ThinkPHP新增資料到資料庫失敗怎麼辦?
一般情況下會先檢查幾個面向:
·檢查控制器或Model名稱是否有誤。
·檢查需要插入的資料是否為空或缺失參數。
·檢查資料表名及欄位名稱(大部分下都是欄位名稱有誤出錯的)。
如果反覆檢查,需插入的資料是正常的,字段名表名也沒有錯誤,你可能會想是不是程式耍脾氣了,退出重來?重啟一下?重來試一下?就這麼折騰半天發現並沒有什麼改變,這時候你該考慮一下其他情況了。
相關推薦:《ThinkPHP教學》
fields欄位快取
使用ThinkPHP框架做開發時,有資料結構改動時,呼叫M()->add()方法插入資料時,總是會插入失敗,遺失掉部分字段內容,於是將模型物件列印出來仔細查看,會發現遺失的字段都是新增加的字段,你就會聯想到快取了,於是你將runtime裡面的快取檔案都清除掉就可以正常插入了。
TP在設定檔中如果沒有關閉欄位快取設定[TMPL_CACHE_ON => false],該設定檔的意思是是否開啟模板編譯緩存,設為false則每次都會重新編譯,預設是開啟的,只要一運行它就會將資料欄位資訊快取到~Runtime/Data/_files 資料夾下,並以數組方式存放在文件中,不需要就關閉好啦。
·debug.php
return array( 'LOG_RECORD'=> true, // 进行日志记录 'LOG_EXCEPTION_RECORD'=> true, // 是否记录异常信息日志 'LOG_LEVEL'=> 'EMERG,ALERT,CRIT,ERR,WARN,NOTIC,INFO,DEBUG,SQL', // 允许记录的日志级别 'DB_FIELDS_CACHE'=> false, // 字段缓存信息 'DB_DEBUG'=> true, // 开启调试模式 记录SQL日志 'TMPL_CACHE_ON'=> false, // 是否开启模板编译缓存,设为false则每次都会重新编译 'TMPL_STRIP_SPACE'=> false, // 是否去除模板文件里面的html空格与换行 'SHOW_ERROR_MSG'=> true, // 显示错误信息 'URL_CASE_INSENSITIVE'=> false, // URL区分大小写 );
·convention.php
// 布局设置 'TMPL_ENGINE_TYPE' => 'Think', // 默认模板引擎 以下设置仅对使用Think模板引擎有效 'TMPL_CACHFILE_SUFFIX' => '.php', // 默认模板缓存后缀 'TMPL_DENY_FUNC_LIST' => 'echo,exit', // 模板引擎禁用函数 'TMPL_DENY_PHP' => false, // 默认模板引擎是否禁用PHP原生代码 'TMPL_L_DELIM' => '{', // 模板引擎普通标签开始标记 'TMPL_R_DELIM' => '}', // 模板引擎普通标签结束标记 'TMPL_VAR_IDENTIFY' => 'array', // 模板变量识别。留空自动判断,参数为'obj'则表示对象 'TMPL_STRIP_SPACE' => true, // 是否去除模板文件里面的html空格与换行 'TMPL_CACHE_ON' => true, // 是否开启模板编译缓存,设为false则每次都会重新编译 'TMPL_CACHE_PREFIX' => '', // 模板缓存前缀标识,可以动态改变 'TMPL_CACHE_TIME' => 0, // 模板缓存有效期 0 为永久,(以数字为值,单位:秒) 'TMPL_LAYOUT_ITEM' => '{__CONTENT__}', // 布局模板的内容替换标识 'LAYOUT_ON' => false, // 是否启用布局 'LAYOUT_NAME' => 'layout', // 当前布局名称 默认为layout
##·
##############################################################系統行為擴充:模板解析,檢查快取檔案是否有效,如果無效則需要重新編譯,ParseTemplateBehavior.class.php###protected function checkCache($tmplTemplateFile,$prefix='') { if (!C('TMPL_CACHE_ON')) // 优先对配置设定检测 return false; $tmplCacheFile = C('CACHE_PATH').$prefix.md5($tmplTemplateFile).C('TMPL_CACHFILE_SUFFIX'); if(!Storage::has($tmplCacheFile)){ return false; }elseif (filemtime($tmplTemplateFile) > Storage::get($tmplCacheFile,'mtime')) { // 模板文件如果有更新则缓存需要更新 return false; }elseif (C('TMPL_CACHE_TIME') != 0 && time() > Storage::get($tmplCacheFile,'mtime')+C('TMPL_CACHE_TIME')) { // 缓存是否在有效期 return false; } // 开启布局模板 if(C('LAYOUT_ON')) { $layoutFile = THEME_PATH.C('LAYOUT_NAME').C('TMPL_TEMPLATE_SUFFIX'); if(filemtime($layoutFile) > Storage::get($tmplCacheFile,'mtime')) { return false; } } // 缓存有效 return true; }
以上是thinkphp加入sql失敗怎麼辦的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本文討論了ThinkPHP的內置測試框架,突出了其關鍵功能(例如單元和集成測試),以及它如何通過早期的錯誤檢測和改進的代碼質量來增強應用程序可靠性。

本文討論了在無服務器體系結構中使用ThinkPHP的關鍵注意事項,專注於性能優化,無狀態設計和安全性。它突出了諸如成本效率和可擴展性之類的收益,但也應對挑戰

本文討論了在ThinkPHP微服務中實施服務發現和負載平衡,重點是設置,最佳實踐,集成方法和推薦工具。[159個字符]

ThinkPHP的IOC容器提供了高級功能,例如懶惰加載,上下文綁定和方法注入PHP App中有效依賴性管理的方法。Character計數:159

ThinkPHP具有輕巧的設計,MVC架構和可擴展性。它通過各種功能提高可擴展性,加快開發並提高安全性。

本文概述了使用ThinkPhp和RabbitMQ構建分佈式任務隊列系統,重點是安裝,配置,任務管理和可擴展性。關鍵問題包括確保高可用性,避免常見的陷阱,例如不當


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

MinGW - Minimalist GNU for Windows
這個專案正在遷移到osdn.net/projects/mingw的過程中,你可以繼續在那裡關注我們。 MinGW:GNU編譯器集合(GCC)的本機Windows移植版本,可自由分發的導入函式庫和用於建置本機Windows應用程式的頭檔;包括對MSVC執行時間的擴展,以支援C99功能。 MinGW的所有軟體都可以在64位元Windows平台上運作。

DVWA
Damn Vulnerable Web App (DVWA) 是一個PHP/MySQL的Web應用程序,非常容易受到攻擊。它的主要目標是成為安全專業人員在合法環境中測試自己的技能和工具的輔助工具,幫助Web開發人員更好地理解保護網路應用程式的過程,並幫助教師/學生在課堂環境中教授/學習Web應用程式安全性。 DVWA的目標是透過簡單直接的介面練習一些最常見的Web漏洞,難度各不相同。請注意,該軟體中

EditPlus 中文破解版
體積小,語法高亮,不支援程式碼提示功能

SublimeText3 Linux新版
SublimeText3 Linux最新版

SublimeText3漢化版
中文版,非常好用