<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之旅 廣告
                [TOC] # 1.7 模型使用 ## 1.7.1 簡介 XPHP 的模型(Model)非常簡單易用,只需要幾步就能夠輕松上手,讓您的應用有標準的數據功能。 ## 1.7.2 配置修改 使用模型(Model)前需要對XPHP進行一些配置,以便于使他更符合您的需要。 ### 1.7.2.1 修改模型后端數據庫 模型后端所使用的數據庫驅動可以由開發者任意選擇,默認選擇的是`Idiorm`這一款優秀的ORM。 如要修改,請看`Register.php`中的這個代碼片段: ```php $App->addBatch([ ['Core.Error.Handler', '\Whoops\Handler\PlainTextHandler'], ['Core.Route', '\X\Route'], ['Core.Model.Database', '\X\Database\Idiorm'] ]); ``` 是的,向系統容器內注冊的`Core.Model.Database`指定了所使用的數據庫驅動。 目前XPHP內置了如下驅動: | 名稱 | Service名 | 備注 | | ---- | ---------- | --- | | Idiorm | \X\Database\Idiorm | 無 | | NonDB | \X\Database\NonDB | 無 | ### 1.7.2.2 修改數據庫驅動配置 數據庫驅動配置位于 `$configure` 變量的 `Database` 字段中。 例子: ```php "Database"=> [ 'connection_string' => 'mysql:host=localhost;dbname=xphp;charset=utf8', //DSN 'driver_options' => array(\PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES utf8'), //PDO Option 'username' => 'root', //用戶名 username 'password' => '', //密碼 password 'logging' => true, //開啟Query日志 Enable Query Log 'caching' => true, //開啟緩存 Enalble Cache 'caching_auto_clear'=> true //自動清理緩存 Auto Clear Cache ] ``` 相信大家看示例可以自己修改。 ### 1.7.3 創建一個模型 每個模型都位于 `/App/應用名/Model` 目錄下,文件名為 `模型名.class.php`。 該文件必須位于 `Model\應用名` 命名空間下。 該文件必須包含且僅應包含一個以模型名命名的類,且它必須繼承`\X\Model`類。 這個類需要有一個 `table` 屬性,并且必須使用 `protected` 修飾符,包括這個模型需要使用的表名。 示例: ```php <?php /** * A Demo Model. * * @author xtl<xtl@xtlsoft.top> * @license MIT * */ namespace Model\Home; class TestModel extends \X\Model { /** * Table Name * * @var $table * */ protected $table = "test"; } ``` 您也可以向內添加其他方法,使用`$this`可以訪問到數據庫驅動實例的所有方法,使用`$this->table("表名")`可以獲取另一個表的數據庫驅動實例。 ### 1.7.4 在控制器中實例化模型 在控制器中可以直接使用 `$this->model("應用名/模型名")` 實例化模型。 例子: ```php $model = $this->model("Home/TestModel"); echo $model->where("name", test")->findOne()->value; ```
                  <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>

                              哎呀哎呀视频在线观看