目次
thinkphp 標準データ テーブルの設計:
1に変換します。今日の情報を取得します
1. create() メソッドを使用して add
1. update は影響を受ける行の数を返します
1. 主キーを渡し、影響を受ける行の数を返します
1。トランザクション処理を自動的に制御します
十、model模型的修改器
十一、model模型的自动完成
十二、自动完成时间戳
Thinkphp更新时,自动更新update_time字段时间戳的方法:
十三、软删除
ホームページ PHPフレームワーク ThinkPHP Thinkphp5 でデータベースを追加、削除、変更、クエリする方法を詳しく説明した記事

Thinkphp5 でデータベースを追加、削除、変更、クエリする方法を詳しく説明した記事

Feb 10, 2022 pm 06:22 PM
データベース操作

Thinkphp5でデータベースを操作し、追加、削除、変更、クエリを行うにはどうすればよいですか?次の記事では、Thinkphp5 でデータベースを追加、削除、変更、クエリする方法について詳しく説明します。

Thinkphp5 でデータベースを追加、削除、変更、クエリする方法を詳しく説明した記事

thinkphp 標準データ テーブルの設計:

時間フィールドの作成: create_time

時間フィールドの更新:update_time

削除時刻フィールド: delete_time

以下に示すように、型として int を選択します:

Thinkphp5 でデータベースを追加、削除、変更、クエリする方法を詳しく説明した記事

#[関連チュートリアルの推奨事項] :

thinkphp Framework]

1. モデル フォルダーを作成します

アプリケーション フォルダーの下のセカンダリ オブジェクト ディレクトリに、model という名前の新しいフォルダーを作成します。このフォルダーは、以下に示すように、対応するコントローラーとビューのディレクトリは同じレベルにあります。

Thinkphp5 でデータベースを追加、削除、変更、クエリする方法を詳しく説明した記事

#複数のモジュールがある場合 (フロントエンド インデックス、バックエンド管理など)モデル モデルは、次のように共通のパブリック モジュールに配置されます:

Thinkphp5 でデータベースを追加、削除、変更、クエリする方法を詳しく説明した記事

#2. モデル モデル クラスを作成します

1. モデル ディレクトリにモデル オブジェクト ファイルを作成します。通常、モデルの名前はテーブル名に対応します (例:

表名 pre_user       --------------->  模型名 User.php
表名 pre_user_info  --------------->  模型名 UserInfo.php
ログイン後にコピー

)。 2. モデルを定義します。model

<?php
namespace app\index\model;
use think\Model;
use think\Db;

class User extends Model{
	/**
     * 定义变量
     * 1.变量名称应与数据表中的字段名相同
     * 2.此处可根据需求省略,因为如果没有,thinkphp会自动在数据表中寻找的对应字段名
     */
	public $username;
	public $password;
}
?>
ログイン後にコピー

3 . データ モデルの定義名がテーブル名と一致しない場合は、次のように追加の定義と宣言が必要です:

<?php
namespace app\index\model;
use think\Model;
use think\Db;

class User extends Model
{
	protected $table = "admin_user";//指定数据表名
    protected $pk = &#39;id&#39;;           //指定主键的字段
}
?>
ログイン後にコピー

3. モデルの呼び出し方法 model

//导入定义的数据模型类
use \app\index\model\User;

//方法一:
$res = User::get(1);

//方法二:
$user = new User;
$res = $user::get(1);	

//方法三:
use think\Loader;
$user = Loader::model("User");
$res = $user::get(1);

//方法四:
$user = model("User");       
$res = $user::get(1);
ログイン後にコピー

4. クエリ操作

get レコードの取得

$res = User::get(1);
ログイン後にコピー

all 複数のレコードの取得

1. パラメータは渡されません

$result = User::all(); //查询出所有记录
ログイン後にコピー

2. パラメータは n、n は正の整数

$result = User::all(1); //查询出id为1的记录
ログイン後にコピー

3. パラメータは 'n1, n2, n3...'

$result = User::all(&#39;7, 8, 9, 10&#39;); //查询出id为7、8、9、10的4条记录
ログイン後にコピー

4. パラメータは [n1 、n2、n3...]

$result = User::all([7, 8, 9, 10]); //查询出id为7、8、9、10的4条记录
ログイン後にコピー

find 特定の項目をクエリします

 $res = User::where(&#39;id&#39;,&#39;1&#39;)->field(&#39;name&#39;)->find();
ログイン後にコピー

に等しくありません

->where( 'id','neq',1)

##複数のクエリを選択

$res = User::where(&#39;id&#39;,&#39;1&#39;)->field(&#39;name&#39;)->limit(2)->order(&#39;id DESC&#39;)->select();
ログイン後にコピー

value フィールドごとに 1 つクエリを実行

$res = User::where(&#39;id&#39;,&#39;1&#39;)->value(&#39;name&#39;);
ログイン後にコピー

結果を配列

$res = $res->toArray();
ログイン後にコピー

クエリ番号

//查询总条数
$res = User::count();
//按条件统计条数
$res = User::where(&#39;id&#39;,&#39;>&#39;,3)->count();
ログイン後にコピー
whereTime()時間条件クエリ

1に変換します。今日の情報を取得します

db(&#39;table&#39;)->whereTime(&#39;c_time&#39;, &#39;today&#39;)->select();
//也可以简化为下面方式
db(&#39;table&#39;)->whereTime(&#39;c_time&#39;, &#39;d&#39;)->select();
ログイン後にコピー

2. 昨日の情報を取得します

db(&#39;table&#39;)->whereTime(&#39;c_time&#39;, &#39;yesterday&#39;)->select();
ログイン後にコピー

3. 今週の情報を取得します

db(&#39;table&#39;)->whereTime(&#39;c_time&#39;, &#39;week&#39;)->select();   
//也可以简化为下面方式
db(&#39;table&#39;)->whereTime(&#39;c_time&#39;, &#39;w&#39;)->select();
ログイン後にコピー

4. 今月の情報を取得します

db(&#39;table&#39;)->whereTime(&#39;c_time&#39;, &#39;month&#39;)->select();   
//也可以简化为下面方式
db(&#39;table&#39;)->whereTime(&#39;c_time&#39;, &#39;m&#39;)->select();
ログイン後にコピー

5.先月の情報を取得

db(&#39;table&#39;)->whereTime(&#39;c_time&#39;,&#39;last month&#39;)->select();
ログイン後にコピー

6. 今年の情報を取得

db(&#39;table&#39;)->whereTime(&#39;c_time&#39;, &#39;year&#39;)->select();    
//也可以简化为下面方式
db(&#39;table&#39;)->whereTime(&#39;c_time&#39;, &#39;y&#39;)->select();
ログイン後にコピー

7. 昨年の情報を取得

db(&#39;table&#39;)->whereTime(&#39;c_time&#39;,&#39;last year&#39;)->select();
ログイン後にコピー

8. 日付間隔クエリ

//根据时间戳查询今天到后天
db(&#39;table&#39;)->whereTime(&#39;time&#39;, &#39;between&#39;, [strtotime(date(&#39;Y-m-d&#39;)), strtotime(date(&#39;Y-m-d&#39;, strtotime(&#39;+2 day&#39;)))])->select();
根据日期查询今天到后天
db(&#39;table&#39;)->whereTime(&#39;time&#39;, &#39;between&#39;, [&#39;2020-3-28&#39;, &#39;2020-3-30&#39;])->select();
ログイン後にコピー

5 . 操作を追加します

1. create() メソッドを使用して add

$res = User::create([
     &#39;name&#39;      => &#39;安阳&#39;,
     &#39;age&#39;       => 23,
     &#39;sex&#39;       => 1,
     &#39;password&#39;  => &#39;123456&#39;
 ]);
ログイン後にコピー

2. データを追加し、追加された主キーを返します

$uid=UserModel::create([
     &#39;name&#39;      => &#39;安阳&#39;,
     &#39;age&#39;       => 23,
     &#39;sex&#39;       => 1,
     &#39;password&#39;  => &#39;123456&#39;
 ])->id;
ログイン後にコピー

また、insertGetId メソッドを使用することもできます

$uid = User::insertGetId([
     &#39;name&#39;      => &#39;安阳&#39;,
     &#39;age&#39;       => 23,
     &#39;sex&#39;       => 1,
     &#39;password&#39;  => &#39;123456&#39;
 ]);
ログイン後にコピー

3. インスタンス化によって追加

 $user = new User;
 $user->name =  &#39;安阳&#39;;
 $user->age =  23;
 $user->save();
ログイン後にコピー

4 、挿入されたフィールドをインスタンス化によってフィルタリングし、挿入された行の数を返します

 $user = new User;
 $data = [
     &#39;name&#39; => &#39;安阳&#39;,
     &#39;age&#39; => 23,
     &#39;email&#39; => &#39;123456@qq.com&#39;
 ];
 //只有name和age字段会写入
 $res = $user->allowField([&#39;name&#39;, &#39;age&#39;])->save($data);
ログイン後にコピー

5モデルは、allowField() を使用して、非データ テーブル フィールドのデータをフィルターします

//定义模型对象,并传入post数据
$user = new User($_POST);
//过滤post数组中的非数据表字段数据
$user->allowField(true)->save();
ログイン後にコピー

6. モデルは、allowField() を使用して、特定のフィールドの書き込みを指定します

$user = new User;
// post数组中只有name和email字段会写入
$user->allowField([&#39;name&#39;,&#39;email&#39;])->save($_POST, [&#39;id&#39; => 1]);
ログイン後にコピー

7. saveAll() を使用しますバッチ追加の場合

#
user = new User;
$list = [
    [&#39;name&#39;=>&#39;安阳&#39;,&#39;email&#39;=>&#39;thinkphp@qq.com&#39;],
    [&#39;name&#39;=>&#39;小柒&#39;,&#39;email&#39;=>&#39;12345678@qq.com&#39;]
 ];
$user->saveAll($list);
ログイン後にコピー

DB クラスの insertAll() メソッドを使用して、正常に追加された項目の数を返すこともできます

$res = User::insertAll([
     &#39;name&#39;      => &#39;安阳&#39;,
     &#39;age&#39;       => 23,
     &#39;sex&#39;       => 1,
     &#39;password&#39;  => &#39;123456&#39;
 ]);
ログイン後にコピー

補足、その他のフィルタリング方法フィールド:

1. DB 操作では、strict を使用して厳密なフィールド チェックをオフにすることができます

Db::name(‘user’)->strict(false)->insert($data);
ログイン後にコピー

2. PHP の unset( ) メソッドを使用すると変数が破壊されます

unset($data[‘file’]);
ログイン後にコピー

6. saveAll は複数のデータを追加し、オブジェクト リストを返します
 $user = new User;
 $data = [
     [
         &#39;name&#39; => &#39;安阳&#39;,
         &#39;age&#39; => 20,
         &#39;email&#39; => &#39;123456@qq.com&#39;
     ],
     [
         &#39;name&#39; => &#39;小柒&#39;,
         &#39;age&#39; => 25,
         &#39;email&#39; => &#39;ap555@qq.com&#39;
     ]
 ];
 $res = $user->allowField([&#39;name&#39;, &#39;age&#39;])->saveAll($data);
ログイン後にコピー

6. 更新操作

1. update は影響を受ける行の数を返します

 $res = User::where([&#39;id&#39;=>1])->update([&#39;name&#39;=>&#39;安阳&#39;]);
ログイン後にコピー

2. setField はフィールドを個別に更新します

User::where(&#39;id&#39;,1)->setField(&#39;name&#39;,&#39;安阳&#39;);
ログイン後にコピー

3. setInc

//setInc(&#39;money&#39;,10)表示将money字段加上10
User::where([&#39;id&#39;=>1])->setInc(&#39;money&#39;, 10);
ログイン後にコピー

4. setDec

//setDec(&#39;money&#39;,10)表示将money字段减去10
User::where([&#39;id&#39;=>1])->setDec(&#39;money&#39;, 10);
ログイン後にコピー

5. バッチ更新ではデータに主キーが含まれている必要があり、更新オブジェクトを返しますlist

$user = new User;
$res = $user->saveAll([
     [&#39;id&#39;=>1, &#39;name&#39; => &#39;安阳&#39;],
     [&#39;id&#39;=>2, &#39;name&#39; => &#39;小柒&#39;]
 ]);
ログイン後にコピー

7. 削除操作

1. 主キーを渡し、影響を受ける行の数を返します

$res = User::destroy(1);
ログイン後にコピー

2. 条件を渡し、影響を受ける行の数を返します影響を受ける行

 $res = User::destroy([&#39;name&#39;=>&#39;安阳&#39;]);
ログイン後にコピー

3。条件付き削除は影響を受ける行の数

 $res = User::where([&#39;id&#39;=>1])->delete();
ログイン後にコピー

8 を返します。トランザクション

1。トランザクション処理を自動的に制御します

Db::transaction(function(){ 
    Db::table(&#39;order&#39;)->where([&#39;id&#39;=>1])->delete(); 
	Db::table(&#39;user&#39;)->where(&#39;id&#39;=>1)->setInc(&#39;money&#39;,10);	
});
ログイン後にコピー

2。手動でトランザクションを制御します

Db::startTrans();//启动事务
try {
    Order::where([&#39;id&#39;=>1])->delete();
	User::where(&#39;id&#39;=>1)->setInc(&#39;money&#39;,10);
	Db::commit();//提交事务
} catch (Exception $e) {
	Db::rollback();	//回滚
}
ログイン後にコピー

9. モデルモデルゲッター

リーダーの命名規則は次のとおりです:
->属性名 Attr## のキャメルケース名を取得します

#

<?php
namespace app\index\model;
use think\Model;
class User extends Model
{		    
    //获取器:将性别的012修改为男、女、未知 返回
	public function getSexAttr($val)
	{
		switch ($val) {
            case 1:
                return &#39;男&#39;;
            case 2:
                return &#39;女&#39;;
            default:
            return &#39;未知&#39;;
		}
	}
   //获取器:格式化时间戳后返回
    public function getUpdateTimeAttr($val){
        if(!empty($val)){
			//如果是时间戳,就格式化
			if(!strtotime($val)) {
				return date(&#39;Y-m-d H:i:s&#39;,$val);
			}else{
				return $val;
			}
        }else{
			return &#39;&#39;;
		}
    }
}
ログイン後にコピー
追加説明: strtotime() は、英語テキストの日付と時刻の記述を Unix タイムスタンプに解析し、成功した場合はタイムスタンプを返し、そうでない場合は FALSE を返します (PHP 5.1.0 より前では、この関数は失敗すると -1 を返します)

十、model模型的修改器

<?php
namespace app\index\model;
use think\Model;
class User extends Model
{
	//修改器
	public function setTimeAttr()
	{
        return time();
	}
    /** 修改器:对密码字段加密之后存储
     * $val  第一个参数是密码
     * $data 第二个参数是添加的数据(可选)
     */
    public function setPasswordAttr($val,$data){
        if($val === &#39;&#39;) {
            return $val;
        }else{
            return md5($val.$data[&#39;email&#39;]);
        }
    }
}
ログイン後にコピー

十一、model模型的自动完成

auto 新增及更新的时候,自动完成的属性数组
insert 仅新增的时候,自动完成的属性数组
update 仅更新的时候,自动完成的属性数组

1、自动完成

<?php
namespace app\index\model;
use think\Model;
class User extends Model
{
	//添加和修改时,都会自动完成的字段
    protected $auto = [&#39;addtime&#39;];

    public function setAddtimeAttr(){
        return time();
    }
}
ログイン後にコピー

2、添加数据时,自动完成

<?php
namespace app\index\model;
use think\Model;
class User extends Model
{
	// 新增 自动完成
    protected $insert = [&#39;addtime&#39;];

    public function setAddtimeAttr(){
        return time();
    }
}
ログイン後にコピー

3、更新数据时,自动完成:

<?php
namespace app\index\model;
use think\Model;
class User extends Model
{
	// 更新 自动完成
    protected $update = [&#39;addtime&#39;];

    public function setAddtimeAttr(){
        return time();
    }
}
ログイン後にコピー

十二、自动完成时间戳

在数据库配置文件database.php中,有下列这项配置:

//自动写入时间戳字段
&#39;auto_timestamp&#39;  => false,
//如果开启(设置为true),则会自动完成所有表的时间戳,但是不建议这样,只在需要的地方设置更安全。
ログイン後にコピー

例如对用户表的时间戳自动完成,就在User的model中设置:

<?php
namespace app\index\model;
use think\Model;

class User extends Model{
    //开启自动完成时间戳功能
    protected $autoWriteTimestamp = true;
    //开启后,
    //添加数据时,默认自动完成的字段是:create_time和update_time
    //修改数据时,默认自动完成的字段是:update_time
    
    //如果数据表里不是这两个字段,则会报错。需要进行如下修改:
    protected $createTime = &#39;addtime&#39;;//修改默认的添加时间字段
    protected $updateTime = &#39;updtime&#39;;//修改默认的修改时间字段
    protected $updateTime = false;//当不需要这个字段时设置为false
}
ログイン後にコピー

Thinkphp更新时,自动更新update_time字段时间戳的方法:

1、使用update

User::update([&#39;name&#39;=>&#39;安阳&#39;],[&#39;id&#39;=>1]);
ログイン後にコピー

Thinkphp中update方法的源代码如下:

/**
    * 更新数据
    * @access public
    * @param array      $data  数据数组
    * @param array      $where 更新条件
    * @param array|true $field 允许字段
    * @return $this
    */
   public static function update($data = [], $where = [], $field = null)
   {
       $model = new static();
       if (!empty($field)) {
           $model->allowField($field);
       }
       $result = $model->isUpdate(true)->save($data, $where);
       return $model;
   }
ログイン後にコピー

2、使用save

$user=new User;
$user->isUpdate(true)->save([&#39;name&#39;=>&#39;安阳&#39;],[&#39;id&#39;=>1]);
ログイン後にコピー

十三、软删除

什么是软删除?

当删除某些记录时,有时我们需要假删除,只通过修改某个字段状态来标记该记录已删除,但实际上,数据库中还是存在这些记录的。假删除的应用场景还是比较多的,例如支付宝的收款记录,我们在APP上删除后,就不会再显示出来,你是不是以为真的删掉了,不会再留下任何痕迹?非也,非也,删除支付宝收款记录只是软删除,在支付宝的数据库中,实际上还保留有这些收款记录,如果你的收款涉嫌违规或者触犯法律,警方还是能通过支付宝的网警后台查看到的。

1、开启软删除

<?php
namespace app\index\model;
use think\Model;
use traits\model\SoftDelete;//引入软删除的类

class Order extends Model{
    //使用软删除
    //删除时,默认更新的字段是delete_time
    use SoftDelete;
    //如果数据表里不是delete_time这个字段,则会报错。需要进行如下修改:
    protected $deleteTime = &#39;deltime&#39;;
}
ログイン後にコピー

2、 控制器里软删除,返回影响的行数

 $res = Order::destroy(1);
ログイン後にコピー

执行删除后,就会更新delete_time字段,如果update_time字段也开启了自动完成,也会更新update_time字段。

3、如果开启了软删除,需要真正地删除数据,而不做软删除,用下面的方法

//destory()第二个参数传递true
$res = Order::destroy(1,true);

//delete()参数传递true
$orderData = Order::get(1);
$orderData ->delete(true);
ログイン後にコピー

4、查询已软删除的数据

$res = Order::withTrashed(true)->find(1);
ログイン後にコピー

5、查询仅包含已软删除的数据

$res = Order::onlyTrashed()->select();
ログイン後にコピー

推荐学习:《PHP视频教程

以上がThinkphp5 でデータベースを追加、削除、変更、クエリする方法を詳しく説明した記事の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

PHPでCodeIgniter4フレームワークを使用するにはどうすればよいですか? PHPでCodeIgniter4フレームワークを使用するにはどうすればよいですか? May 31, 2023 pm 02:51 PM

PHP は非常に人気のあるプログラミング言語であり、CodeIgniter4 は一般的に使用される PHP フレームワークです。 Web アプリケーションを開発する場合、フレームワークを使用すると、開発プロセスのスピードアップ、コードの品質の向上、メンテナンス コストの削減が可能になり、非常に役立ちます。この記事ではCodeIgniter4フレームワークの使い方を紹介します。 CodeIgniter4 フレームワークのインストール CodeIgniter4 フレームワークは、公式 Web サイト (https://codeigniter.com/) からダウンロードできます。下

MySQL 管理に Pagoda パネルを使用する方法 MySQL 管理に Pagoda パネルを使用する方法 Jun 21, 2023 am 09:44 AM

Pagoda Panel は、サーバーの迅速な導入、管理、監視に役立つ強力なパネル ソフトウェアで、特に Web サイトの構築、データベース管理、サーバーのメンテナンスが頻繁に必要な中小企業や個人ユーザーに役立ちます。これらのタスクの中でも、MySQL データベースの管理は多くの場合重要な仕事です。では、MySQL 管理に Pagoda パネルを使用するにはどうすればよいでしょうか?それでは、順を追ってご紹介していきます。ステップ 1: Pagoda パネルをインストールする. MySQL 管理に Pagoda パネルを使用し始める前に、まず Pagoda パネルをインストールする必要があります。

PHP スクリプトを使用して Linux 環境でデータベース操作を実行する方法 PHP スクリプトを使用して Linux 環境でデータベース操作を実行する方法 Oct 05, 2023 pm 03:48 PM

PHP を使用して Linux 環境でデータベース操作を実行する方法 最新の Web アプリケーションでは、データベースは不可欠なコンポーネントです。 PHP は、さまざまなデータベースと対話できる人気のあるサーバー側スクリプト言語です。この記事では、Linux 環境でデータベース操作に PHP スクリプトを使用する方法を紹介し、いくつかの具体的なコード例を示します。ステップ 1: 必要なソフトウェアと依存関係をインストールする 開始する前に、PHP と関連する依存関係が Linux 環境にインストールされていることを確認する必要があります。いつもの

データベース操作に PDO を使用する: PHP を使用したより良い方法 データベース操作に PDO を使用する: PHP を使用したより良い方法 Jun 21, 2023 pm 01:36 PM

データベース操作に PDO を使用する: PHP を使用したより良い方法 Web 開発では、データの保存、管理、クエリにデータベースを使用するのが非常に一般的です。 Web 開発で広く使用されている言語である PHP は、当然のことながら豊富なデータベース操作方法を提供します。 PHP では、MySQLi、PDO、およびその他の拡張ライブラリを使用してデータベース操作を実行できます。中でも PDO は非常によく使われるデータベース操作方式であり、他の方式に比べて多くの利点を持っています。この記事ではPDOとは何かを紹介します。

thinkormを使ってデータベース運用効率を向上させる方法 thinkormを使ってデータベース運用効率を向上させる方法 Jul 28, 2023 pm 03:21 PM

thinkorm を使用してデータベース操作の効率を向上させる方法 インターネットの急速な発展に伴い、大量のデータベース操作を必要とするアプリケーションがますます増えています。このプロセスでは、データベース操作の効率が特に重要になります。データベース操作の効率を向上させるために、強力な ORM フレームワークである thinkorm を使用してデータベース操作を実行できます。この記事では、thinkorm を使用してデータベース操作の効率を向上させる方法を紹介し、コード例を通して説明します。 1. 思考とは何ですか?

Symfony フレームワークでのデータベース操作に Doctrine ORM を使用する方法 Symfony フレームワークでのデータベース操作に Doctrine ORM を使用する方法 Jul 29, 2023 pm 04:13 PM

データベース操作のために Symfony フレームワークで DoctrineORM を使用する方法 はじめに: Symfony フレームワークは、Web アプリケーションを迅速かつ簡単に構築するための多くの強力なツールとコンポーネントを提供する人気のある PHP フレームワークです。主要なコンポーネントの 1 つは DoctrineORM で、データベース操作を処理するエレガントな方法を提供します。この記事では、DoctrineORM を使用して Symfony フレームワークでデータベース操作を実行する方法を詳しく紹介します。私達はします

MySQL で FULL OUTER JOIN 関数を使用して 2 つのテーブルの結合を取得する方法 MySQL で FULL OUTER JOIN 関数を使用して 2 つのテーブルの結合を取得する方法 Jul 26, 2023 pm 05:45 PM

MySQL で FULLOUTERJOIN 関数を使用して 2 つのテーブルの結合を取得する方法 MySQL の FULLOUTERJOIN 関数は、内部結合と外部結合を組み合わせた強力な結合操作です。これを使用すると、2 つのテーブルの和集合を取得できます。つまり、2 つのテーブル内のすべてのデータを 1 つの結果セットに結合できます。この記事では、FULLOUTERJOIN 関数の使用法を紹介し、読者の理解を深めるためにいくつかのサンプル コードを提供します。 FULLOUTERJOIN関数

PHP バックエンド設計: データベース操作とデータ対話の実践 PHP バックエンド設計: データベース操作とデータ対話の実践 Jan 19, 2024 am 10:31 AM

Web サイト、アプリケーション、またはシステムを開発する場合、データベースの操作とデータのやり取りは不可欠です。一般的に使用されるバックエンド開発言語として、PHP のデータベース操作およびデータ対話機能も非常に強力です。この記事では、PHP で一般的に使用されるデータベース操作関数とデータ対話の実践方法をいくつか紹介します。同時に、読者がよりよく理解して適用できるように、コード例を使用してこれらの操作と実践を説明します。 1. データベース接続 データベース操作を行う前に、まずデータベースに接続する必要があります。 PHP では次のように使用できます

See all articles