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!