データベースフィールド再利用の基本原則と例_PHP チュートリアル
1. 論理代数の基礎:
1. 数字は2進数で表され、取り得る数字はすべて0と1のみです。
2. 基本的な操作は「and」、「or」、「not」の 3 つだけです。
AND演算は次のように定義されます(AND演算を表現するには&を使用します)
0 & 0 = 0
0 & 1 = 0
1 & 0 = 0
1 & 1 = 1
単純に理解すると、掛け算と同じように、0がある限り結果は0になります。
OR演算は次のように定義されます: (AND演算を表すには|を使用します)
0 = 0
0 | 1 = 1
1 | 0 = 1
1 | 1 = 1
単純に理解すると、1がある限り、結果は1になる、足し算と同じです。
2. 論理演算の例:
01111010101010101111111111111111 & 1100000 = 1100000
一般的には次のように理解できます:
数値のN桁の値を取得したい場合は、数値と2のN-1乗(マスク)をANDするだけです。
3. データベースフィールド定義:
データテーブル binary_sample を例に挙げます:
テーブル binary_sample(
を作成)uid int unsigned not null,
ステータス int unsigned not null デフォルト 0,
主キー(uid)、
キーi_s(ステータス)
)engine=innodb;
ステータスフィールドの定義:
ステータスフィールドのデータ型は32ビット整数で、できるだけ多くの属性を格納するために、次のように定義します。
以下のすべての「ビット」の記述順序は、下位から上位(右から左)に表現されます。数字0~2はユーザー登録状況を示します:
000は新規登録が承認されていないことを意味します
001は登録が承認されたことを意味します
010は上級ユーザーを意味します
011は管理者を意味します
100はスーパー管理者を意味します
101予約済み
110予約済み
111マスク
3~5人のユーザーの性別:
000は性別の不確実性を示します
001は性別が男性であることを示します
010は性別が女性であることを示します
011予約済み
100予約
101予約済み
110予約済み
111マスク
すべての男性ユーザーをクエリしたい場合:
select * from binary_sample where status & b111000 = b001000;
すべての管理者ユーザーをクエリしたい場合:
select * from binary_sample where status & b111 = b011;
すべての男性管理者ユーザーをクエリしたい場合:
select * from binary_sample where status & b111111 = b001011;
承認されていない新規登録以外のすべてのユーザーをクエリしたい場合は、次のようになります。
select * from binary_sample where status & b111 != b000;
4、PHPプログラムを使用してこのような計算を実行します:
define("USER_NEW",0);//000
define("USER_NORMAL",1);//001
define("USER_ADVANCE",2);//010
define("USER_MANAGE",3);//011
define("USER_SUPER",4);//100
define("USER_MASK",7);//111
define("GENDER_UNKNOWN",0);// 000000
define("GENDER_MALE",8);// 001000
define("GENDER_FEMALE",9);// 010000
define("GENDER_MASK",56);//111000
すべての男性ユーザーをクエリしたい場合:
$status=GENDER_MALE;
$mask=GENDER_MASK;
$sql="select * from binary_sample where status & ${mask} = ${status}";
すべての管理者ユーザーをクエリしたい場合:
$status=USER_MANAGE;
$mask=USER_MASK;
$sql="select * from binary_sample where status & ${mask} = ${status}";
すべての男性管理者ユーザーをクエリしたい場合:
$status=GENDER_MALE & USER_MANAGE;
$mask = GENDER_MASK & GENDER_MASK;
$sql="select * from binary_sample where status & ${mask} = ${status}";
新規登録および未承認のユーザー以外のすべてのユーザーをクエリしたい場合は、次のようにします。
$status = USER_NEW;$mask = USER_MASK;
$sql="select * from binary_sample where status & ${mask} != ${status}";
類推すると、それぞれの値の意味が定義されていれば、クエリは基本的に解決されます。
http://www.bkjia.com/PHPjc/478751.html

ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

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

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

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

ホットトピック









Apple の最新リリースの iOS18、iPadOS18、および macOS Sequoia システムでは、さまざまな理由で紛失または破損した写真やビデオをユーザーが簡単に回復できるように設計された重要な機能が写真アプリケーションに追加されました。この新機能では、写真アプリのツール セクションに「Recovered」というアルバムが導入され、ユーザーがデバイス上に写真ライブラリに含まれていない写真やビデオがある場合に自動的に表示されます。 「Recovered」アルバムの登場により、データベースの破損、カメラ アプリケーションが写真ライブラリに正しく保存されない、または写真ライブラリを管理するサードパーティ アプリケーションによって失われた写真やビデオに対する解決策が提供されます。ユーザーはいくつかの簡単な手順を実行するだけで済みます

目次 Astar Dapp ステーキングの原則 ステーキング収益 潜在的なエアドロップ プロジェクトの解体: AlgemNeurolancheHealthreeAstar Degens DAOVeryLongSwap ステーキング戦略と運用 「AstarDapp ステーキング」は今年初めに V3 バージョンにアップグレードされ、ステーキング収益に多くの調整が加えられましたルール。現在、最初のステーキング サイクルが終了し、2 番目のステーキング サイクルの「投票」サブサイクルが始まったばかりです。 「追加報酬」特典を獲得するには、この重要な段階を把握する必要があります (6 月 26 日まで続く予定で、残りは 5 日未満です)。 Astarステーキング収入を詳しく説明します。

2025年、グローバルデジタル仮想通貨取引プラットフォームは、トランザクションのボリューム、セキュリティ、ユーザーエクスペリエンスなどの指標に基づいて、2025年に世界のトップ10のデジタル通貨取引プラットフォームを激しく競争しています。 OKXは、強力な技術的強さとグローバルな運用戦略で最初にランクされており、Binanceは高流動性と低料金に密接に続きます。 Gate.io、Coinbase、Krakenなどのプラットフォームは、それぞれの利点がある最前線にいます。このリストには、Huobi、Kucoin、Bitfinex、Crypto.com、Geminiなどの取引プラットフォームがそれぞれ独自の特徴がありますが、投資は注意する必要があります。プラットフォームを選択するには、セキュリティ、流動性、料金、ユーザーエクスペリエンス、通貨選択、規制コンプライアンスなどの要因を考慮し、合理的に投資する必要があります

JSON データは、gjson ライブラリまたは json.Unmarshal 関数を使用して MySQL データベースに保存できます。 gjson ライブラリは、JSON フィールドを解析するための便利なメソッドを提供します。json.Unmarshal 関数には、JSON データをアンマーシャリングするためのターゲット型ポインターが必要です。どちらの方法でも、SQL ステートメントを準備し、データをデータベースに永続化するために挿入操作を実行する必要があります。

PHP データベース接続エラーを回避するには、接続エラーを確認し、変数名を資格情報と照合するというベスト プラクティスに従ってください。安全なストレージまたは環境変数を使用して、資格情報のハードコーディングを回避します。 SQL インジェクションを防止し、準備されたステートメントまたはバインドされたパラメーターを使用するために、使用後に接続を閉じます。

MySQLは、オープンソースのリレーショナルデータベース管理システムです。 1)データベースとテーブルの作成:createdatabaseおよびcreateTableコマンドを使用します。 2)基本操作:挿入、更新、削除、選択。 3)高度な操作:参加、サブクエリ、トランザクション処理。 4)デバッグスキル:構文、データ型、およびアクセス許可を確認します。 5)最適化の提案:インデックスを使用し、選択*を避け、トランザクションを使用します。

トップ10の仮想通貨取引プラットフォームのランキング(2025年の最新): Binance:グローバルリーダー、高い流動性、規制が注目を集めています。 OKX:大規模なユーザーベース、複数の通貨をサポートし、レバレッジされた取引を提供します。 gate.io:さまざまなフィアット通貨支払い方法を備えた上級交換は、さまざまな取引ペアと投資商品を提供します。 Bitget:デリバティブ交換、高流動性、低料金。 Huobi:さまざまな通貨と取引ペアをサポートする古い交換。 コインベース:厳密に規制されている有名なアメリカの交換。 フェメックスなど。

トップ10のデジタル通貨取引プラットフォーム:1。OKX、2。BINANCE、3。GATE.IO、4。HuobiGlobal、5。Kraken、6。Coinbase、7。Kucoin、8。Bitfinex、9。Crypto.com、10。Gemini、これらの交換は、ユーザーがユーザーを選択できます。
