Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Panduan Rangka Kerja ThinkPHP dalam PHP

Panduan Rangka Kerja ThinkPHP dalam PHP

WBOY
WBOYasal
2023-05-21 08:51:051846semak imbas

ThinkPHP ialah rangka kerja sumber terbuka PHP yang terkenal Ia dicirikan oleh kecekapan, kesederhanaan dan kemudahan penggunaan serta boleh membina aplikasi web berskala besar dengan cepat. Artikel ini akan memperkenalkan anda kepada penggunaan dan langkah berjaga-jaga rangka kerja ThinkPHP.

1. Pemasangan rangka kerja ThinkPHP

1. Muat turun rangka kerja ThinkPHP

Anda boleh memuat turun pakej dimampatkan ThinkPHP di tapak web rasmi (http://www.thinkphp. cn/) dan nyahzip. Ia juga boleh dipasang melalui Komposer. Tiada butiran lanjut akan diberikan di sini.

2. Cipta projek baharu

Buat projek baharu pada pelayan web dan salin rangka kerja ThinkPHP yang dinyahmampat ke direktori projek.

2. Penggunaan asas rangka kerja ThinkPHP

Seni bina teras MVC (Model-View-Controller) rangka kerja ThinkPHP. Antaranya,

Model mengendalikan operasi lapisan kegigihan data
View bertanggungjawab untuk pembentangan antara muka pengguna
Pengawal berfungsi sebagai lapisan logik perniagaan dan bertanggungjawab untuk menerima dan memproses permintaan.

1 Cipta pengawal

Dalam rangka kerja ThinkPHP, kami boleh mengendalikan permintaan HTTP melalui pengawal.

Buat fail HomeController.php baharu dan masukkan kandungan berikut:

class HomeController extends Controller
{
    public function index()
    {
        echo "Hello World!";
    }
}

2. Cipta laluan

Selepas melengkapkan pengawal, kita perlu menyediakan laluan ke mengakses pengawal. Terdapat dua cara untuk menetapkan penghalaan: satu ialah menetapkannya dalam fail konfigurasi, satu lagi ialah menetapkannya dalam anotasi (ThinkPHP 5 atau lebih tinggi).

Tetapkan penghalaan dalam fail konfigurasi:

<?php
return [
    'route' => [
        'home/index' => 'HomeController/index',
    ]
];

Kod di atas menunjukkan bahawa alamat permintaan /home/index akan dihalakan ke kaedah indeks pengawal HomeController.

Tetapkan laluan dalam anotasi:

/**
 * @route('home/index')
 */
public function index()
{
    echo "Hello World!";
}

3 Akses pengawal

Selepas melengkapkan langkah di atas, kita boleh memanggil laluan yang baru kita buat dengan mengakses /home/. pengawal indeks.

3. Enjin templat rangka kerja ThinkPHP

1 Apakah itu enjin templat

Enjin templat memisahkan data dan logik perniagaan daripada fail paparan untuk memudahkan penyelenggaraan dan Semakan kemudian. . Enjin templat terbina dalam rangka kerja ThinkPHP mudah digunakan dan berkuasa. Secara lalai, pengawal secara automatik akan mencari fail templat bernama "methodname.html" atau "methodname.php".

2. Gunakan enjin templat

Langkah-langkah untuk menggunakan enjin templat dalam pengawal:

①Benamkan teg

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title>模板示例</title>
    </head>
    <body>
        <h1>{$title}</h1>
        <ul>
            {foreach $list as $item}
                <li>{$item}</li>
            {/foreach}
        </ul>
    </body>
</html>

dalam fail templat Anda boleh gunakan teg seperti Smarty dan Blade Di sini kami menggunakan teg enjin templat terbina dalam ThinkPHP.

② Lulus parameter dalam pengawal

class HomeController extends Controller
{
    public function index()
    {
        $this->assign('title', 'Hello World');
        $this->assign('list', [
            'item1', 'item2', 'item3'
        ]);
        return $this->fetch();
    }
}

Dalam kod ini, kaedah assign() menetapkan data ke dalam templat dan kaedah fetch() mengembalikan HTML yang diberikan.

Di atas adalah penggunaan enjin templat rangka kerja ThinkPHP.

4. Operasi pangkalan data rangka kerja ThinkPHP

1 Konfigurasi pangkalan data

Ubah suai konfigurasi pangkalan data dalam fail config/database.php:

return [
    // 数据库类型
    'type'     => 'mysql',
    // 服务器地址
    'hostname' => 'localhost',
    // 数据库名
    'database' => 'test',
    // 用户名
    'username' => 'root',
    // 密码
    'password' => '',
    // 端口
    'hostport' => '',
    // 数据库编码默认采用utf8
    'charset'  => 'utf8',
    // 数据库表前缀
    'prefix'   => '',
];

2. . Data pertanyaan

Gunakan kelas Pertanyaan untuk beroperasi, yang boleh dicapai melalui kaedah berikut:

<?php
namespace appindexcontroller;
use thinkDb;

class Index
{
    public function index()
    {
        //查询数据
        $list = Db::name('user')->order('id asc')->select();
        $this->assign('list', $list);
        return $this->fetch();
    }
}

Kod di atas menunjukkan kaedah menanyakan data jadual pengguna (pengguna).

3. Masukkan data

Gunakan kaedah insert() kelas Db untuk memasukkan data:

Db::name('user')->insert([
   'name' => '张三',
   'age' => 18,
   'email' => 'zhangsan@163.com'
]);

4 kemas kini() kaedah kelas Db ) untuk mengemas kini data:

Db::name('user')
    ->where('id', 1)
    ->update(['name' => '李四', 'age' => 20]);

5 Padam data

Gunakan kaedah delete() kelas Db untuk memadam data:

Db::name('user')
    ->where('id', 1)
    ->delete();
Ringkasan

Melalui Pengenalan artikel ini, saya percaya anda sudah mempunyai pemahaman awal tentang penggunaan rangka kerja ThinkPHP. Dalam pembangunan projek sebenar, kita perlu mempelajari dengan lebih mendalam tentang pelbagai komponen rangka kerja, terutamanya penggunaan model dan penghalaan. Semoga artikel ini dapat membantu anda.

Atas ialah kandungan terperinci Panduan Rangka Kerja ThinkPHP dalam PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn