Einführung in das TH5-Framework und den URL-Zugriff

零下一度
Freigeben: 2023-03-10 17:30:02
Original
4598 Leute haben es durchsucht

1. Verzeichnisstruktur:

wobei das Unterverzeichnis thinkphp das Framework-Kernverzeichnis

Thinkphp-Struktur:

2. Eintragsdatei

Die Standard-Eintragsdatei Das Anwendungsverzeichnis unter public/index.php

ist <span style='color: #003300; font-family: "Microsoft YaHei"'>application und seine Struktur ist: <code class="hljs css"><span class="hljs-tag">application,其结构:</span>

indexModulverzeichnisstruktur:

Index为Controller-Datei

3. Controller:

Suchen Sie den index-Controller des Index-Moduls >

Finden Sie den Controller des index ModulsIndex

Ändern Sie den Rückgabewert in helloworld

Besuchen Sie :

Sehen Sie sich die Ausgabe an!

4. Datenauslesung:

Datenbank:

Sie müssen die Datenbankverbindungsinformationen in der Datenbankkonfigurationsdatei der Anwendung wie folgt hinzufügen: application/database.php

<?phpreturn [    &#39;type&#39;           => 'mysql',         // 数据库类型   'hostname'       => '127.0.0.1',     // 服务器地址   'database'       => 'outengcms',     // 数据库名'username'       => 'root',     // 用户名'password'       => 'root',     // 密码'hostport'       => '3306',             // 端口'dsn'            => '',                 // 连接dsn'params'         => [],                 // 数据库连接参数   'charset'        => 'utf8',             // 数据库编码默认采用utf8   'prefix'         => 'think_',         // 数据库表前缀   'debug'          => true,             // 数据库调试模式  'deploy'         => 0,                 // 数据库部署方式:0 集中式(单一服务器),1 分布式(主从服务器)   'rw_separate'    => false,             // 数据库读写是否分离 主从式有效   'master_num'     => 1,                 // 读写分离后 主服务器数量  'slave_no'       => '',                 // 指定从服务器序号   'fields_strict'  => true,             // 是否严格检查字段是否存在   'resultset_type' => 'array',         // 数据集返回类型 array 数组 collection Collection对象   'auto_timestamp' => false,             // 是否自动写入时间戳字段  'sql_explain'    => false,             // 是否需要进行SQL性能分析];
Nach dem Login kopieren

Verbinden Als nächstes ändern wir die Controller-Methode und fügen den Code zum Lesen von Daten hinzu:

<?php
namespace app\silingling\controller;use think\Controller;//use think\Db;class Index extends Controller
{public function _empty($name)
    {return $this->fetch('/Public/404');
    }     public function tianjia($code='')
{if(!captcha_check($code)) {$this->error('验证码错误');            
        }////    echo 111111111;////添加数据库1else {            $naa = $_POST["naa"];$tel = $_POST["tel"];//留言联系我们Db::table('think_shenqing')->data(['naa'=>$naa,'tel'=>$tel])->insert();         $this->success('添加成功','index');
        }        
           
//        //                }

}
Nach dem Login kopieren

Nachdem der Controller geschrieben wurde, ändern Sie direkt die Vorlagendatei und verwenden Sie Tags Zeigen Sie es einfach an;

5. Der URL-Zugriff

verwendet einen einzigen Zugangsmodus, um auf die Anwendung und alle Anfragen zuzugreifen Anwendung werden an die Eingabedatei der Anwendung weitergeleitet. Das System analysiert das aktuell angeforderte Modul, den Controller und die Operation anhand der ThinkPHP-Parameter. Das Folgende ist ein Standard-URL-Zugriffsformat: URL

<span class="hljs-string">http:<span class="hljs-comment">//serverName/index.php/module/controller/action<span style='font-family: "Microsoft YaHei"; color: #003300'> <code class="hljs groovy"><span class="hljs-string">http:<span class="hljs-comment">//serverName/index.php/模块/控制器/操作</span></span>

Die Unterverzeichnisse unter der Anwendung werden Module genannt, und die Module werden alle in Kleinbuchstaben benannt

von Anwendungindexdes ModulsIndexDer Controller ist wie folgt definiert:

<?php
namespace app\silingling\controller;use think\Controller;//use think\Db;class Index extends Controller
{public function _empty($name)
    {return $this->fetch('/Public/404');
    }public function index()
    {return $this->fetch('/Public/index');

    }     public function index1()
    { $list=Db::name('auth_rule')->where('sort', 55)->select();$this->assign('list',$list);//      liucheng$list3 = Db::name('article')->where('writer',22)->select();$this->assign('list3',$list3);//chaxun$list211 = Db::name('haoma')->where('code'>0)->select();$this->assign('list211',$list211);return $this->fetch('/Public/index1');

    }
}
Nach dem Login kopieren

如果我们直接访问入口文件index,因为我们没有指定url,所以系统会访问默认模块(index)下面的默认控制器(Index)的默认操作方法(index),

<span style='color: #003300; font-family: "Microsoft YaHei"'><code class="hljs perl">http:<span class="hljs-regexp">//</span></code><code class="hljs perl">localhost</code><code class="hljs perl"><span class="hljs-regexp">/<span class="hljs-keyword">index.php<br><br>http://localhost/index.php/index/index/index<br>这两个连接等效!<br><br></span></span></code></span>
Nach dem Login kopieren

应用的index模块的Index控制器定义如下:

<?php
namespace app\lianxi\controller;use think\Controller;use think\Db;class Index extends Controller
{public function _empty($name)
    {return $this->fetch('/Public/404');
    }      public function index(){return 'index';
    }public function hello($name = 'World'){return 'Hello,' . $name . '!';
    } 
    }
Nach dem Login kopieren

如果我们直接访问入口文件的话,默认走的是index方法,

如果要访问控制器的hello方法,则需要使用完整的URL地址

输出的是:

<br>
Nach dem Login kopieren
Nach dem Login kopieren

由于name参数为可选参数,连接这样输:

http://localhost/index.php/lianxi/Index/hello/name/xuanxuan

 输出:

<br>
Nach dem Login kopieren
Nach dem Login kopieren
<span class="hljs-regexp"><span class="hljs-keyword"><span style='color: #ff0000; font-family: "Microsoft YaHei"; font-size: 18pt'>6.模板渲染输出:</span>&lt;br&gt;</span></span>
Nach dem Login kopieren

输出当前模块下的index模板:

  1. // 指定模板输出
    Nach dem Login kopieren
  2. $this->display('index');
    Nach dem Login kopieren

输出User模块下面的read模板:

 

  1. $this->display('User:read');
    Nach dem Login kopieren

输出模板时指定编码和类型:

  1. // 表示输出XML页面类型(注意:这里可以输出网站地图sitemap.xml哦~~)
    Nach dem Login kopieren
  2. $this->display('read', 'utf-8', 'text/xml');
    Nach dem Login kopieren

总结一下,ThinkPHP的模板渲染可以设置编码类型及输出文件的类型

 

 <br>
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonEinführung in das TH5-Framework und den URL-Zugriff. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage