<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                # 字段定義 [上一頁](56.html "上一頁")[下一頁](58.html "下一頁") 通常情況下,你無須在模型類里面手動定義數據表的字段,系統會在模型首次實例化的時候自動獲取數據表的字段信息(而且只需要一次,以后會永久緩存字段信息,除非設置不緩存或者刪除),如果是調試模式則不會生成字段緩存文件,則表示每次都會重新獲取數據表字段信息。 字段緩存保存在Runtime/Data/_fields/ 目錄下面,緩存機制是每個模型對應一個字段緩存文件(而并非每個數據表對應一個字段緩存文件),命名格式是: **數據庫名.模型名.php** 例如: thinkphp.User.php 表示User模型生成的字段緩存文件 thinkphp.Article.php 表示Article模型生成的字段緩存文件 字段緩存包括數據表的字段信息、主鍵字段和是否自動增長,如果開啟字段類型驗證的話還包括字段類型信息等等,無論是用M方法還是D方法,或者用原生的實例化模型類一般情況下只要是不開啟調試模式都會生成字段緩存(字段緩存可以單獨設置關閉)。 從3.1版本開始,模型的字段緩存文件名全部轉換成小寫,避免重復生成。可以通過設置DB_FIELDS_CACHE 參數來關閉字段自動緩存,如果在開發的時候經常變動數據庫的結構,而不希望進行數據表的字段緩存,可以在項目配置文件中增加如下配置:`'DB_FIELDS_CACHE'=>false`注意:調試模式下面由于考慮到數據結構可能會經常變動,所以默認是關閉字段緩存的。 如果需要顯式獲取當前數據表的字段信息,可以使用模型類的getDbFields方法來獲取當前數據對象的全部字段信息,例如:`$fields?=?$User->getDbFields();`如果你在部署模式下面修改了數據表的字段信息,可能需要清空Data/_fields目錄下面的緩存文件,讓系統重新獲取更新的數據表字段信息,否則會發生新增的字段無法寫入數據庫的問題。 如果不希望依賴字段緩存或者想提高性能,也可以在模型類里面手動定義數據表字段的名稱,可以避免IO加載的效率開銷,在模型類里面添加fields屬性即可,定義格式如下:`<?php<br class="calibre5"></br>????class?UserModel?extends?Model{<br class="calibre5"></br>????????protected?$fields?=?array(<br class="calibre5"></br>????????????'id',?'username',?'email',?'age',?'_pk'?=>?'id',?'_autoinc'?=>?true<br class="calibre5"></br>????????);<br class="calibre5"></br>????}`其中_pk 表示主鍵字段名稱 _autoinc 表示主鍵是否自動增長類型,定義了fields屬性之后,就不會自動獲取數據表的字段信息了。如果有修改或者增加字段,必須手動修改fields屬性的值。 [上一頁](56.html "上一頁")[下一頁](58.html "下一頁")
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看