Cookie を使用して PHP でショッピング カートを実装する方法、Cookie ショッピング カート_PHP チュートリアル
phpはCookieを使用してショッピングカート、Cookieショッピングカートを実装します
この記事の例では、Cookie を使用して PHP でショッピング カートを実装する方法を説明します。参考のためにみんなで共有してください。具体的な分析は次のとおりです:
php ショッピング カートは、電子商取引サイトで使用されます。商品を選択したら、まずショッピング カートに入れて、カウンターで決済されるのを待ちます。この例は、この原則に基づいています。興味のある方はご覧ください。コードは次のとおりです。
* ショッピングカートの Cookie は保存され、保存期間は 1 日です。 注: Cookie を使用するにはブラウザが Cookie をサポートしている必要があります。 */
クラスカルタピ {
private $cartarray = array(); // ショッピングカートを格納する 2 次元配列
private $cartcount; // ショッピングカートの数をカウントします
public $expires = 86400; // Cookie の有効期限、0 の場合、単位は秒です。 /**
* コンストラクターの初期化操作 $id が空でない場合は、直接ショッピングカートに追加します
*
*/
public function __construct($id = "",$name = "",$price1 = "",$price2 = "",$price3 = "",$count = "",$image = "",$expires = 86400 ) {
if ($id != "" && is_numeric($id)) {
$this->有効期限 = $有効期限
$this->addcart($id,$name,$price1,$price2,$price3,$count,$image); }
}
/**
* カートに商品を追加します
*
* @param int $id アイテム番号
* @param string $name 製品名
* @param 10進数 $price1 商品価格
* @param 10進数 $price2 商品価格
* @param 10進数 $price3 商品価格
* @param int $count 商品数量
* @param string $image 製品画像
* @return 商品が存在する場合は、元の数量に 1 を加えて false を返します
*/
パブリック関数 addcart($id,$name,$price1,$price2,$price3,$count,$image) {
$this->cartarray = $this->cartview() // 配列へのデータの読み取りと書き込み
; if ($this->checkitem($id)) { // アイテムが存在するかどうかを確認します
$this->modifycart($id,$count,0) // 商品の数量に $count を追加します
false を返します。 }
$this->cartarray[0][$id] = $id; $this->cartarray[1][$id] = $name; $this->cartarray[2][$id] = $price1; $this->cartarray[3][$id] = $price2; $this->cartarray[4][$id] = $price3; $this->cartarray[5][$id] = $count; $this->cartarray[6][$id] = $image; $this->save(); }
/**
* ショッピングカート内の項目を変更します
*
* @param int $id アイテム番号
* @param int $count 商品数量
* @param int $flag 修正タイプ 0: 加算 1: 減算 2: 修正 3: クリア
* @return 変更が失敗した場合は false を返します
*/
パブリック関数modifycart($id, $count, $flag = "") {
$tmpid = $id
$this->cartarray = $this->cartview() // 配列へのデータの読み取りと書き込み
; $tmparray = &$this->cartarray; // 引用
if (!is_array($tmparray[0])) は false を返します
if ($id false を返します。 }
foreach ($tmparray[0] as $item) {
if ($item === $tmpid) {
スイッチ ($flag) {
ケース 0: // 通常、$count は 1 です。 $tmparray[5][$id] += $count
休憩
ケース 1: // 数量を減らす
$tmparray[5][$id] -= $count
休憩
ケース 2: // 数量を変更します
If ($count == 0) {
unset($tmparray[0][$id]); unset($tmparray[1][$id]); unset($tmparray[2][$id]); unset($tmparray[3][$id]); unset($tmparray[4][$id]); unset($tmparray[5][$id]); unset($tmparray[6][$id]); 休憩
} その他 {
$tmparray[5][$id] = $count; 休憩
}
ケース 3: // アイテムをクリアします
unset($tmparray[0][$id]); unset($tmparray[1][$id]); unset($tmparray[2][$id]); unset($tmparray[3][$id]); unset($tmparray[4][$id]); unset($tmparray[5][$id]); unset($tmparray[6][$id]); 休憩
デフォルト:
休憩
}
}
}
$this->save(); }
/**
* ショッピングカートをクリアします
*
*/
パブリック関数 Removeall() {
$this->cartarray = array(); $this->save(); }
/**
* ショッピングカート情報を見る
*
* @return array 2次元配列を返します
*/
パブリック関数 cartview() {
$cookie = チュートリアルのまつ毛を除去します($_cookie['cartapi']); if (!$cookie) が false を返す
$tmpunserialize = unserialize($cookie); $tmpunserialize を返します
}
/**
* ショッピングカートに商品があるか確認してください
*
* @return bool 商品があればtrueを返し、それ以外の場合はfalseを返します
*/
パブリック関数 checkcart() {
$tmparray = $this->カートビュー(); if (count($tmparray[0]) false を返します。 }
true を返します。 }
/**
*製品統計
*
* @return array 1次元配列を返します $arr[0]: 商品1の合計価格 $arr[1: 商品2の合計価格 $arr[2]: 商品3の合計価格 $arr[3] : 商品3の合計金額
*/
パブリック関数 countprice() {
$tmparray = $this->cartarray = $this->cartview(); $outarray = array() //一次元配列
; // 0 は商品 1 の合計価格です
// 1 は製品 2 の合計価格です
// 2 は製品 3 の合計価格です
// 3 は商品の合計数量です
$i = 0; if (is_array($tmparray[0])) {
foreach ($tmparray[0] as $key=>$val) {
$outarray[0] += $tmparray[2][$key] * $tmparray[5][$key]
$outarray[1] += $tmparray[3][$key] * $tmparray[5][$key]; $outarray[2] += $tmparray[4][$key] * $tmparray[5][$key]; $outarray[3] += $tmparray[5][$key]; $i++; }
}
$outarray を返します。 }
/**
*商品の数を数えます
*
* @return int
*/
パブリック関数 cartcount() {
$tmparray = $this->カートビュー(); $tmpcount = カウント($tmparray[0]); $this->カート数 = $tmpcount; $tmpcount を返します
}
/**
* 製品を保存する 施工方法を使用しない場合は、この方法を使用する必要があります
*
*/
パブリック関数 save() {
$tmparray = $this->cartarray
$tmpserialize = シリアル化($tmparray); setcookie("cartapi",$tmpserialize,time()+$this->期限切れになります); }
/**
* ショッピングカート内の商品が存在するか確認してください
*
* @param int $id
* @return bool trueの場合、それ以外の場合はfalse
*/
プライベート関数 checkitem($id) {
$tmparray = $this->cartarray
if (!is_array($tmparray[0]))
を返す foreach ($tmparray[0] as $item) {
if ($item === $id) は true を返します
}
false を返します。 }
}
?>
この記事で説明した内容が皆様の PHP プログラミング設計に役立つことを願っています。
http://www.bkjia.com/PHPjc/925132.html
www.bkjia.com
true
http://www.bkjia.com/PHPjc/925132.html
技術記事
PHP は Cookie を使用してショッピング カートを実装します。 Cookie ショッピング カート この記事では、PHP が Cookie を使用してショッピング カートを実装する方法について説明します。参考のためにみんなで共有してください。具体的な分析は次のとおりです: p...

ホット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)

ホットトピック











PHP 8.4 では、いくつかの新機能、セキュリティの改善、パフォーマンスの改善が行われ、かなりの量の機能の非推奨と削除が行われています。 このガイドでは、Ubuntu、Debian、またはその派生版に PHP 8.4 をインストールする方法、または PHP 8.4 にアップグレードする方法について説明します。

あなたが経験豊富な PHP 開発者であれば、すでにそこにいて、すでにそれを行っていると感じているかもしれません。あなたは、運用を達成するために、かなりの数のアプリケーションを開発し、数百万行のコードをデバッグし、大量のスクリプトを微調整してきました。

Visual Studio Code (VS Code とも呼ばれる) は、すべての主要なオペレーティング システムで利用できる無料のソース コード エディター (統合開発環境 (IDE)) です。 多くのプログラミング言語の拡張機能の大規模なコレクションを備えた VS Code は、

JWTは、JSONに基づくオープン標準であり、主にアイデンティティ認証と情報交換のために、当事者間で情報を安全に送信するために使用されます。 1。JWTは、ヘッダー、ペイロード、署名の3つの部分で構成されています。 2。JWTの実用的な原則には、JWTの生成、JWTの検証、ペイロードの解析という3つのステップが含まれます。 3. PHPでの認証にJWTを使用する場合、JWTを生成および検証でき、ユーザーの役割と許可情報を高度な使用に含めることができます。 4.一般的なエラーには、署名検証障害、トークンの有効期限、およびペイロードが大きくなります。デバッグスキルには、デバッグツールの使用とロギングが含まれます。 5.パフォーマンスの最適化とベストプラクティスには、適切な署名アルゴリズムの使用、有効期間を合理的に設定することが含まれます。

このチュートリアルでは、PHPを使用してXMLドキュメントを効率的に処理する方法を示しています。 XML(拡張可能なマークアップ言語)は、人間の読みやすさとマシン解析の両方に合わせて設計された多用途のテキストベースのマークアップ言語です。一般的にデータストレージに使用されます

文字列は、文字、数字、シンボルを含む一連の文字です。このチュートリアルでは、さまざまな方法を使用してPHPの特定の文字列内の母音の数を計算する方法を学びます。英語の母音は、a、e、i、o、u、そしてそれらは大文字または小文字である可能性があります。 母音とは何ですか? 母音は、特定の発音を表すアルファベットのある文字です。大文字と小文字など、英語には5つの母音があります。 a、e、i、o、u 例1 入力:string = "tutorialspoint" 出力:6 説明する 文字列「TutorialSpoint」の母音は、u、o、i、a、o、iです。合計で6元があります

静的結合(静的::) PHPで後期静的結合(LSB)を実装し、クラスを定義するのではなく、静的コンテキストで呼び出しクラスを参照できるようにします。 1)解析プロセスは実行時に実行されます。2)継承関係のコールクラスを検索します。3)パフォーマンスオーバーヘッドをもたらす可能性があります。

PHPの魔法の方法は何ですか? PHPの魔法の方法には次のものが含まれます。1。\ _ \ _コンストラクト、オブジェクトの初期化に使用されます。 2。\ _ \ _リソースのクリーンアップに使用される破壊。 3。\ _ \ _呼び出し、存在しないメソッド呼び出しを処理します。 4。\ _ \ _ get、dynamic属性アクセスを実装します。 5。\ _ \ _セット、動的属性設定を実装します。これらの方法は、特定の状況で自動的に呼び出され、コードの柔軟性と効率を向上させます。
