


Tutoriel PHP : Combiner des cookies et des tableaux pour implémenter un panier d'achat
J'ai découvert que les résultats obtenus par de nombreuses fonctions en PHP sont donnés par des tableaux. Le plus couramment utilisé est mysql_fetch_array()
Inclut les informations de chaîne obtenues pour générer un tableau, puis décompose le tableau en une chaîne. en utilisant la fonction éclater() ; implode();
Je n'ai jamais écrit une implémentation telle qu'un panier d'achat auparavant, je sens que je suis un type stupide, je l'ai écrit par intermittence pendant une semaine et j'y ai réfléchi. (J'ai le droit d'être arrogant en tant que novice) faire du shopping.
Et comme je ne suis jamais entré en classe, je me concentre toujours sur le processus.
L'essence de la méthode que j'utilise est la suivante : stocker le cookie dans le tableau, ajouter, supprimer et modifier le tableau. Chaque ensemble d'enregistrements dans le tableau contient des informations sur un produit (numéro, prix, etc. )
L'idée pour résoudre le panier est d'utiliser des cookies pour enregistrer un tableau bidimensionnel. Une dimension représente chaque produit et deux dimensions incluent l'ID du produit, la quantité du produit, etc. Vous pouvez l'ajouter vous-même. Quoi qu'il en soit, il est bidimensionnel. Vous pouvez ajouter autant d'attributs de produit que vous le souhaitez.
Les opérations sur les articles du panier comprennent généralement les opérations suivantes : ajouter des articles, modifier la quantité d'articles, supprimer des articles et vider le panier.
Ces opérations sont toutes destinées aux cookies. A chaque fois, le tableau du cookie est retiré, ajouté, modifié, supprimé, puis enregistré dans le cookie. Quant à vider le panier, c'est encore plus simple. Il suffit de vider le cookie du même nom.
Ce qui suit est la fonction d'opération spécifique que j'ai écrite
//Ajouter au panier
function addcart($goods_id,$goods_num){
$cur_cart_array = unserialize(stripslashes($_COOKIE['shop_cart_info'])); cur_cart_array==""){
$cart_info[0][] = $goods_id;
$cart_info[0][] = $goods_num; serialize($cart_info));
}elseif($cur_cart_array<>""){
//Renvoie le nom de la clé du tableau dans l'ordre inverse et prend la plus grande
$ ar_keys = array_keys($cur_cart_array );
rsort($ar_keys);
$max_array_keyid = $ar_keys[0] 1;
//Parcourir le tableau du panier actuel
//Parcourir chaque tableau d'informations sur le produit a une valeur 0, si la valeur clé est 0 et que le numéro d'article est le même, le même article existe dans le panier
foreach($cur_cart_array as $goods_current_cart){
foreach($goods_current_cart as $ key=>$goods_current_id){
if ($key == 0 et $goods_current_id == $goods_id){
echo ""
exit(); 🎜> }
}
$cur_cart_array[ $max_array_keyid][] = $goods_id;
$cur_cart_array[$max_array_keyid][] = $goods_num; ",serialize($cur_cart_array));
}
}
//Supprimer du panier
function delcart($goods_array_id){
$cur_goods_array = unserialize(stripslashes($_COOKIE['shop_cart_info']) );
//Supprimer la position du produit dans le tableau
unset($cur_goods_array[$goods_array_id] setcookie("shop_cart_info",serialize($cur_goods_array));
}
//Modifier la quantité d'articles dans le panier
function update_cart($up_id,$up_num, $goods_ids){
//Effacez d'abord le cookie afin qu'il puisse être réinitialisé et transmis. Voici trois paramètres de tableau : 1 identifiant de tableau 2 tableau de quantité de produit 3 tableau de numéro de produit
//Si vous ne le faites pas effacez le cookie, vous ne pouvez pas traiter les produits avec une quantité nulle
setcookie("shop_cart_info","");
foreach($up_id as $song){
//Renvoyer d'abord l'unité actuelle de le tableau ; puis déplacez le pointeur vers le bas
$goods_nums = current($up_num);
$goods_id = current ($goods_ids); );
//Lorsque le nombre de marchandises est vide, annulez la valeur du tableau ici et utilisez l'instruction continue 2 pour éviter. Ouvrez l'opération suivante et continuez la boucle foreach
while($goods_nums == 0 ){
unset($chanson);
continuer 2;
$cur_goods_array[$ chanson][0] = $goods_id; 1] = $goods_nums;
}
setcookie("shop_cart_info",serialize($cur_goods_array))
}
Pour la formation ultérieure de la commande, vous devez la stocker en fonction de vos propres besoins, qu'il s'agisse de points, de récompenses en espèces, etc.
Ce qui précède est la combinaison de cookies et de tableaux pour réaliser le contenu du panier. Pour plus de contenu connexe, veuillez faire attention au site Web PHP chinois (www.php.cn) !

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

La méthode d'utilisation d'une boucle foreach pour supprimer les éléments en double d'un tableau PHP est la suivante : parcourez le tableau, et si l'élément existe déjà et que la position actuelle n'est pas la première occurrence, supprimez-le. Par exemple, s'il existe des enregistrements en double dans les résultats de la requête de base de données, vous pouvez utiliser cette méthode pour les supprimer et obtenir des résultats sans enregistrements en double.

Les méthodes de copie approfondie de tableaux en PHP incluent : l'encodage et le décodage JSON à l'aide de json_decode et json_encode. Utilisez array_map et clone pour créer des copies complètes des clés et des valeurs. Utilisez Serialize et Unsérialize pour la sérialisation et la désérialisation.

La comparaison des performances des méthodes de retournement des valeurs de clé de tableau PHP montre que la fonction array_flip() fonctionne mieux que la boucle for dans les grands tableaux (plus d'un million d'éléments) et prend moins de temps. La méthode de la boucle for consistant à retourner manuellement les valeurs clés prend un temps relativement long.

Le tri des tableaux multidimensionnels peut être divisé en tri sur une seule colonne et en tri imbriqué. Le tri sur une seule colonne peut utiliser la fonction array_multisort() pour trier par colonnes ; le tri imbriqué nécessite une fonction récursive pour parcourir le tableau et le trier. Les cas pratiques incluent le tri par nom de produit et le tri composé par volume de ventes et prix.

La meilleure pratique pour effectuer une copie complète d'un tableau en PHP consiste à utiliser json_decode(json_encode($arr)) pour convertir le tableau en chaîne JSON, puis à le reconvertir en tableau. Utilisez unserialize(serialize($arr)) pour sérialiser le tableau en chaîne, puis désérialisez-le en un nouveau tableau. Utilisez RecursiveIteratorIterator pour parcourir de manière récursive des tableaux multidimensionnels.

La fonction array_group_by de PHP peut regrouper des éléments dans un tableau en fonction de clés ou de fonctions de fermeture, renvoyant un tableau associatif où la clé est le nom du groupe et la valeur est un tableau d'éléments appartenant au groupe.

PHP est un langage de script côté serveur couramment utilisé dans les domaines du développement de sites Web et du traitement de données. En PHP, il est très courant de trier les valeurs d'un tableau par taille. En utilisant la fonction de tri intégrée, vous pouvez facilement trier les tableaux. Ce qui suit présente comment utiliser PHP pour trier les valeurs d'un tableau par taille, avec des exemples de code spécifiques : 1. Triez les valeurs du tableau par ordre croissant :

La fonction array_group() de PHP peut être utilisée pour regrouper un tableau par une clé spécifiée afin de rechercher les éléments en double. Cette fonction fonctionne selon les étapes suivantes : Utilisez key_callback pour spécifier la clé de regroupement. Utilisez éventuellement value_callback pour déterminer les valeurs de regroupement. Comptez les éléments regroupés et identifiez les doublons. Par conséquent, la fonction array_group() est très utile pour rechercher et traiter des éléments en double.
