Heim > Backend-Entwicklung > PHP-Tutorial > Wie PHP den Benutzerstatus mithilfe der Binärdatei speichert

Wie PHP den Benutzerstatus mithilfe der Binärdatei speichert

小云云
Freigeben: 2023-03-19 19:16:01
Original
1173 Leute haben es durchsucht

Das Speichern des Benutzerstatus ist eine sehr häufige Anforderung, um den Benutzerstatus zu speichern, indem in der Datenbanktabelle mehrere Felder erstellt werden, um beispielsweise zu speichern, ob der Benutzer eine Mobiltelefonnummer gebunden hat QQ, Sie benötigen 2 Felder (mobile, qq) zum Speichern. Dieser Artikel enthält hauptsächlich ein Beispiel für die Verwendung von PHP zum Speichern des Benutzerstatus. Es hat einen guten Referenzwert und ich hoffe, dass es für alle hilfreich ist. Folgen wir dem Herausgeber und schauen wir uns das an. Ich hoffe, es kann allen helfen.

Wenn Sie den Benutzerstatus binär speichern, benötigen Sie nur 1 Feld (Status), um mehrere Benutzerstatus zu speichern.

Natürlich hat die Verwendung von Binärdateien zum Speichern einige Nachteile, z. B. kann sie keine detaillierten Informationen speichern und kann nur zur Statusbeurteilung verwendet werden, und auch die Lesbarkeit in der Datenbank ist relativ schlecht. Unten finden Sie eine relativ einfache Demo.

Code


<?php
/**
 * 使用二进制来保存用户状态
 */
//首先定义4个用户状态
define(&#39;MOBILE&#39;, 1); //手机号绑定
define(&#39;EMAIL&#39;, 2);  //邮箱绑定
define(&#39;WECHAT&#39;, 4); //微信绑定
define(&#39;QQ&#39;, 8);   //QQ绑定
//模拟用户类
class User {
  public $user_name = "";
  public $status = 0; //用来保存用户状态
  function __construct($user_name, $status) {
    $this->user_name = $user_name;
    $this->status = $status;
  }
}
//new一个测试用户
$test_user = new User("test_user", 0);
//先判断用户是否绑定了手机号
if (($test_user->status & MOBILE) == MOBILE)
  echo "first:该用户已经绑定手机号,用户状态是:" . $test_user->status . "</br>";
else
  echo "first:该用户没有绑定手机号,用户状态是:" . $test_user->status . "</br>";
//接着该用户去绑定了手机号 微信 和 QQ
$test_user->status = MOBILE | WECHAT | QQ;
//再判断一下用户是否绑定了手机号
if (($test_user->status & MOBILE) == MOBILE)
  echo "second:该用户已经绑定手机号,用户状态是:" . $test_user->status . "</br>";
else
  echo "second:该用户没有绑定手机号,用户状态是:" . $test_user->status . "</br>";
//再判断一下用户有没有绑定邮箱
if (($test_user->status & EMAIL) == EMAIL)
  echo "third:该用户已经绑定邮箱,用户状态是:" . $test_user->status . "</br>";
else
  echo "third:该用户没有绑定邮箱,用户状态是:" . $test_user->status . "</br>";
//然后这个用户解除了手机号绑定
$test_user->status = ($test_user->status & (~MOBILE));
//再次判断用户是否绑定了手机号
if (($test_user->status & MOBILE) == MOBILE)
  echo "fourth:该用户已经绑定手机号,用户状态是:" . $test_user->status . "</br>";
else
  echo "fourth:该用户没有绑定手机号,用户状态是:" . $test_user->status . "</br>";
Nach dem Login kopieren

Verwandte Empfehlungen:

Wie verarbeitet PHP Binärdaten?

Das obige ist der detaillierte Inhalt vonWie PHP den Benutzerstatus mithilfe der Binärdatei speichert. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage