Rumah  >  Artikel  >  rangka kerja php  >  Contoh analisis cara mengubah suai data dalam thinkphp3.2

Contoh analisis cara mengubah suai data dalam thinkphp3.2

PHPz
PHPzasal
2023-04-07 09:25:47553semak imbas

Dalam thinkphp3.2, mengubah suai data ialah operasi biasa. Artikel ini akan memperkenalkan cara mengubah suai data dalam thinkphp3.2.

Pertama, kita perlu menyediakan jadual data sampel. Katakan kita mempunyai jadual data bernama book dengan struktur berikut:

id int(11) NOT NULL AUTO_INCREMENT,
name varchar(255) COLLATE utf8_unicode_ci NOT NULL,
author varchar(255) COLLATE utf8_unicode_ci NOT NULL,
price decimal(10,2) NOT NULL,
PRIMARY KEY (id)

Dalam jadual data ini, kita boleh menyimpan nama, pengarang dan harga buku.

Seterusnya, kita perlu mencipta model Book. Cipta model baharu dalam direktori AppModel:

namespace App\Model;

use think\Model;

class Book extends Model
{

}

Dalam kelas model, kita perlu menentukan jadual data untuk digunakan. Untuk kesederhanaan, kita boleh mentakrifkan atribut protected $table dalam kelas model:

namespace App\Model;

use think\Model;

class Book extends Model
{
    protected $table = 'book';
}

Dengan cara ini, model Book boleh berinteraksi dengan jadual data book.

Seterusnya, kita perlu menulis kod untuk mengubah suai data. Katakan kita ingin menukar harga buku tertentu. Kita boleh mencapai ini melalui kod berikut:

use App\Model\Book;

$book = Book::get(1); // 获取主键为1的书籍对象
$book->price = 29.99; // 修改价格
$book->save(); // 保存修改

Dalam kod di atas, kita mula-mula menggunakan kaedah Book::get(1) untuk mendapatkan objek buku dengan kunci utama 1, kemudian ubah suai harga dan simpan pengubahsuaian melalui kaedah $book->save().

Selain mendapatkan objek melalui kunci utama, kami juga boleh menggunakan kaedah where untuk menapis objek. Contohnya, jika kami ingin mengubah suai harga semua buku yang pengarangnya ialah "Zhang San", kami boleh menggunakan kod berikut:

use App\Model\Book;

$books = Book::where('author', '=', '张三')->select(); // 获取所有作者为“张三”的书籍对象
foreach ($books as $book) {
    $book->price *= 0.8; // 将价格打八折
    $book->save(); // 保存修改
}

Dalam kod di atas, kami menggunakan kaedah Book::where('author', '=', '张三')->select() untuk dapatkan semua buku yang pengarangnya ialah "Zhang San" ” objek buku, dan putar objek ini melalui foreach, diskaun harga sebanyak 20% dan simpan pengubahsuaian.

Selain kaedah di atas, kita juga boleh menggunakan kaedah update untuk mengubah suai data pada satu masa. Sebagai contoh, jika kami ingin menukar harga semua buku dengan pengarang "李思" kepada 35 yuan, kami boleh menggunakan kod berikut:

use App\Model\Book;

$result = Book::where('author', '=', '李四')->update(['price' => 35.00]); // 修改价格
if ($result !== false) {
    echo '修改成功!'; // 输出结果
}

Dalam kod di atas, kami menggunakan Book::where('author', '=', '李四')->update(['price' => 35.00]) kaedah menukar pengarang sekali gus Harga semua buku untuk "John Doe" diubah suai kepada 35 yuan dan $result !== false digunakan untuk menentukan sama ada pengubahsuaian itu berjaya.

Di atas adalah cara mengubah suai data dalam thinkphp3.2 saya harap ia dapat membantu pembaca.

Atas ialah kandungan terperinci Contoh analisis cara mengubah suai data dalam thinkphp3.2. 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