この記事では、主に、PHP フレームワーク Laravel での UUID の使用を紹介し、UUID に基づいて、関連する操作手順、実装スキル、および操作上の注意事項を例の形式で分析します。以下を参照してください
この記事の例では、PHP フレームワーク Laravel でデータ テーブル操作を実装するための UUID の使用について説明します。参考までに皆さんと共有してください。詳細は次のとおりです。
UUID
UUID は、マシン上で生成される番号を指し、同じ時間と空間にあるすべてのマシンに対して一意であることが保証されています。
簡単に言うと、ルールによって生成される固有の識別情報です(例: 事業者識別番号 + 年、月、日 + その日の自己増加デジタル形式)。当社のデータと情報の一部を関連付けるために使用されます。
例
以前プロジェクトに取り組んでいたときにこれを使用しました。今はLaravelフレームワークを使用して簡単なデモを作成します
フロントエンドフォーム
<!DOCTYPE html> <html> <head></head> <body> <form action="/addMysql" method="post"> {!!csrf_field()!!} <table> <tr> <th style="colspan:2">注册</th> </tr> <tr> <td>账号</td> <td> <input type="text" name="uname" value="" /> </td> </tr> <tr> <td>密码</td> <td> <input type="password" name="pwd" value="" /> </td> </tr> <tr> <td>性别</td> <td> <input type="radio" name="sex" value="1" />:男 <input type="radio" name="sex" value="0" />:女 </td> </tr> <tr> <td>年龄</td> <td> <input type="text" name="age" value="" /> </td> </tr> <tr> <td style="colspan:2"> <input type="submit" value="提交" /> </td> </tr> </table> </form> </body> </html>
データベースとデータテーブルを構築します。 (詳細情報を保存するために、1つのインデックステーブルと8つのサブテーブルのみを作成します)
原則: UUIDの固有の特性により、データの詳細情報データは他のテーブルに保存されます。これは、インデックスがUUIDを通じてランダムに割り当てられることを意味します。 UUID とキー フィールドのみがテーブルに保存されます
表前缀统一前缀-------mall_ 表 : mall_index_user 索引表 -------uuid,uname 表0: mall_user_0 uuid,uname,sex,age 表1: mall_user_1 表2: mall_user_2 表3: mall_user_3 表4: mall_user_4 表5: mall_user_5 表6: mall_user_6 表7: mall_user_7
ルーティングとコントローラーを通じてデータベースにデータを送信します
Routing:
//form表单页面路由 Route::get('Mysql',function(){ return view('home/Mysql'); }); //数据插入提交路由 Route::post('/addMysql','findMoreController@addMysql');
Controller:
//向数据库插入数据 public function addMysql(Request $request){ $uuid =md5(uniqid(mt_rand (), true)); $uid =hexdec(substr($uuid,0,1)) % 8; $sex = $request->input('sex'); $age = $request->input('age'); //dd($uuid); $uname = $request->input('uname'); $result = DB::table('index_user')->insert(['uuid'=>$uuid,'uname'=>$uname]); $result1 = DB::table('user_'.$uid)->insert(['uuid'=>$uuid,'uname'=>$uname,'sex'=>$sex,'age'=>$age]); if($result1){ return '1'; }else{ return '0'; } }
説明:上記の$uidは、UUIDで取得したテーブルに挿入する詳細情報テーブルの代表番号です
例: $uid=3 次に、詳細情報をuser_3
Queryに挿入します。挿入が成功したら、まずクエリを実行します。 uname を通じて UUID を取得し、その UUID を使用して詳細情報がどのサブテーブルに格納されているかを確認します。次に、クエリ
Routing:
//查询页面 Route::get('findMysql',function(){ return view('home/findMysql'); }); //查询路由 Route::post('/findMysql','findMoreController@findMysql');
Controller:
//查询 public function findMysql(Request $request){ //dd($request); $uname=$request->input('uname'); $uuid =DB::table('index_user')->where('uname','=',$uname)->value('uuid'); $uid =hexdec(substr($uuid,0,1)) % 8; $userInfos=DB::table('user_'.$uid)->get(); if($userInfos){ return view('home/selectMysql',['userInfos'=>$userInfos]); }else{ return view('home/findMysql'); } }
Front-この時点で、UUID テーブルを使用してデータを処理する簡単な例が完成しました。
関連する推奨事項:Laravel フレームワークで Redis を使用する方法
php での uuid の使用
以上がUUIDを使用してPHPフレームワークLaravelでデータテーブル操作を実装するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。