Maison  >  Article  >  développement back-end  >  PHP Exemples d'utilisation du binaire pour enregistrer le statut de l'utilisateur Conseils PHP

PHP Exemples d'utilisation du binaire pour enregistrer le statut de l'utilisateur Conseils PHP

jacklove
jackloveoriginal
2018-06-28 17:50:461431parcourir

L'éditeur ci-dessous partagera avec vous un exemple de PHP utilisant le binaire pour enregistrer le statut de l'utilisateur. Il a une bonne valeur de référence et j'espère qu'il sera utile à tout le monde. Suivons l'éditeur et jetons un coup d'œil.

Avant-propos

La sauvegarde du statut de l'utilisateur est une exigence très courante et est généralement utilisée pour sauvegarder le statut de l'utilisateur. . La méthode consiste à créer plusieurs champs dans la table de base de données pour stocker le statut de l'utilisateur correspondant. Par exemple, si vous souhaitez enregistrer si l'utilisateur est lié à un numéro de téléphone mobile et à QQ, vous avez besoin de 2 champs (mobile, qq). sauvegarder.

Si vous utilisez le binaire pour enregistrer le statut de l'utilisateur, vous n'avez besoin que d'un seul champ (statut) pour enregistrer plusieurs statuts d'utilisateur.

Bien sûr, l'utilisation du binaire pour sauvegarder présente certains inconvénients, par exemple, il ne peut pas stocker d'informations détaillées et ne peut être utilisé que pour juger de l'état, et la lisibilité de la base de données est également relativement mauvaise. Vous trouverez ci-dessous une démo relativement simple.

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>";

Le PHP ci-dessus utilise le binaire pour enregistrer le statut de l'utilisateur. des exemples sont tout le contenu partagé par l'éditeur. J'espère qu'il pourra vous donner une référence, et j'espère que vous soutiendrez le site Web php chinois.

Articles qui pourraient vous intéresser :

File d'attente de messages PHP+Redis pour implémenter un exemple php de statistiques de inscrits à haute concurrence

Laravel ORM ouvre uniquement create_at plusieurs méthodes pour résumer des exemples php

PHP enregistre la méthode d'information de navigation du visiteur, exemple php

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn