关闭顶部展开顶部

PHP购物车类_PHP教程

编辑Tag赚U币
教程Tag:暂无Tag,欢迎添加,赚取U币!

推荐:怎样得到一个字符串的最后一个字符
PHP技巧:得到一个字符串的最后一个字符 ?php 得到PHP中最后一个字符 str = www.dwww.cn ; var = trim(str); len = strlen(var)-1; echo var{len}; ?

因为需求中只记录产品的类型,还有编号..比如食物,,然后什么编号,,这样子.所以没有记录产品的数量..要用的自己改进一下就行了.

<?php
//setcookie("cart","s:26,45,4,4523423|d:17,7,27,26|e:12,13,123,43|f:34");
//cartAdd('e','167');
//getProInfo('z');
//delProInfo('f','26');


/**
* ***********
* 用于记录,修改,删除COOKIE的类,用于我的计划的本地信息的更改
* LIQUAN
*/

class cart
{
/*
实现COOKIES购物车
@type 产品类型
@id 产品编号
COOKIES的结果为 type1:3,45,23|type2:34,234,34|type3:344,124
*/
function cartAdd(type,id)
{
//如果第一次使用,则重新设置COOKIES
if(!isset(_COOKIE["cart"]))
{
setcookie("cart",type.":".id);
}
else
{
//如果不是第一次,则先取出来
cartStr=_COOKIE["cart"];
//把结果分开
cartarray=split("\|",cartStr);

//用于判断类型是否存在,初始不存在,为零
istype=0;
//产品编号列表
id_list;
//循环产品
for (i=0;i<count(cartarray);i++)
{
//获取产品名和产品编号列表
list(carttype,product)=split(":",cartarray[i]);
//如果已经存在的产品与要保存的相如,把isType改为1,说明产品已经存在
if (type==carttype)
{
istype=1;
//获取产品的编号列表
id_list=product;
//中断循环
break ;
}
}
//如果产品不存在
if(istype==0)
{
//往COOKIES里面加入新产品和产品的编吃
cartStr=cartStr."|".type.":".id;
}
else
{
//把产品列表分开成数组
id_list=split("\,",id_list);
//标识产口编号是否存在,初始不存在
isId=0;
//循环产品编号
for(i=0;i<count(id_list);i++)
{
//如果要保存的产品编号已尼存在
if(id==id_list[i])
{
//标识已存在.退出循环
isId=1;
break;
}
}
//这里只做产品类型和产品编号,所以相同的不加数量,直接不外理
//如果相关类型的产品编号不存在,则加上新的编号
if(isId!=1)
{
cartStr=str_replace(type.":",type.":".id.",",cartStr);
//cartStr=str_replace('d:','d:2,',cartStr);
}

}
setcookie("cart",cartStr);
print_r(_COOKIE["cart"]);

//setcookie("cart","",time()-100);


}
return ;
}
//返回相应的产品列表
/*
@type产品类型
*/
function getProInfo(type)
{
//获取购物车COOKIES
cartStr=_COOKIE["cart"];

//匹配COOKIES字符,获取产品列表
preg_str=type.":((\d+),)*(\d+)";
//echo "<br>";
preg_match("/".preg_str."/",cartStr,proStr);

//echo proStr[0];
//exit();
list(protype,product)=split(":",proStr[0]);

return product;
//pro_list=split(",",product);
//返回产品列表
//return pro_list;
// print_r(pro_list);
}
/*
*删除产品
*@type产品类型名
*@id 产品编号
*/
function delProInfo(type,id)
{
//获取购物车COOKIES
cartStr=_COOKIE["cart"];

//匹配COOKIES字符,获取产品列表
preg_str=type.":((\d+),)*(\d+)";
//echo "<br>";
preg_match("/".preg_str."/i",cartStr,proStr);

//只有能找到要删除的类型,才进行下面操做
if(proStr)
{
//查询删除的类型里面是否有要删除的ID
isproId=strstr(proStr[0],id);

//如果有,才进行下面操作
if(isproId)
{
//更新后的产品字符串
upproStr;
//更新后的所有最新的产品COOKIES字符
newCartStr;

//查询要删除的产品是否有多个
preg_match("/,/",proStr[0],isend);
//如果有,进行下面操作
if(isend)
{
//查询要删除的产品后面是否还有产品
preg_match("/".id.",/",proStr[0],isdot);
//如果有,删除后面的逗号
if(isdot)
{
upproStr=str_replace(id.",","",proStr[0]);
}
//如果没有,删除前面的逗号
else
{
upproStr=str_replace(",".id,"",proStr[0]);
}
//更新要插入COOKIES里面的字符串
newCartStr=str_replace(proStr[0],upproStr,cartStr);
}
//如果没有多个,则直接删除该类产品
else
{

//判断该类产品后面还有没有产品
preg_match("/".proStr[0]."\|/",cartStr,issu);
//如果有,则删除后面的分格符
if(issu)
{
newCartStr=str_replace(proStr[0]."|","",cartStr);
}
//如果没有,则删除前面的分格符
else
{
newCartStr=str_replace("|".proStr[0],"",cartStr);
}
}

setcookie("cart",newCartStr);

}
}
}
function deletecart()
{
setcookie("cart","",time()-100);
}
}
?>
 

 

分享:PHP将汉字转换拼音
?php d=array( array(a,-20319), array(ai,-20317), array(an,-20304), array(ang,-20295), array(ao,-20292), array(ba,-20283), array(bai,-20265), array(ban,-20257), array(bang,-20242), array(bao,-20230), array(bei,-20051),

来源:模板无忧//所属分类:PHP教程/更新时间:2010-03-16
loading.. 评论加载中....
相关PHP教程
闂佹眹鍩勯崹閬嶆偤閺囶澁缍栭柛鈩冪⊕閳锋帗銇勯弴妤€浜惧銈忕秶閹凤拷
濠电偛顕慨顓㈠磻閹炬枼妲堥柡鍌濇硶婢ф稒淇婇懠顒夆偓婵嬫煟閵忊晛鐏查柟鍑ゆ嫹
濠电姷顣介埀顒€鍟块埀顒勵棑缁辩偛顓兼径瀣閻庣懓瀚竟鍡欐崲娑斾線鏌i姀鈺佺伈闁瑰嚖鎷�
濠电姷顣介埀顒€鍟块埀顒勵棑缁辩偛顓兼径濠勵吋闂佽鍨庨崟顓фК闂佽閰eḿ褍螞濞戙垺鍋夐柨鐕傛嫹
闂備胶枪缁绘劙骞婃惔銊ョ劦妞ゆ帒鍊哥敮鍫曞箹鐎涙ḿ鐭掔€规洘绻堥弫鎾绘晸閿燂拷
闂備胶枪缁绘劙骞婃惔銊ョ劦妞ゆ巻鍋撻柛姘儑缁﹪鏁傞崜褏鐓撻柣搴岛閺呮繈鎯屽▎鎴犵=濞撴艾锕ョ€氾拷
闂備浇銆€閸嬫挻銇勯弽銊р槈闁伙富鍣i弻娑樷攽閹邦亞鑳虹紓浣靛妽濡炶棄顕i妸鈺婃晬婵炲棙鍨电粭锟犳⒑閸濆嫬鈧骞婇幘鑸殿潟闁跨噦鎷�
闂備礁鎼崯鐗堟叏妞嬪海绀婂鑸靛姈閻擄綁鎮规潪鎷岊劅婵炲眰鍊曢湁闁挎繂妫欑粈鈧梺鍛娚戦悧鐘茬暦閹扮増鏅搁柨鐕傛嫹
婵犵妲呴崹顏堝礈濠靛棭鐔嗘俊顖氬悑鐎氱粯銇勯幘瀵哥畺閻庢熬鎷�
濠电姷顣介埀顒€鍟块埀顒勵棑缁辩偛顓奸崶銊ヮ伕濡炪倖鎸荤换鍐偓姘虫珪娣囧﹪顢涘Δ鈧晶鍙夌節椤喗瀚�
婵犵妲呴崹顏堝礈濠靛棭鐔嗘慨妞诲亾鐎规洦鍓熼、娆撳礂閻撳簶鍋撻悽鍛婄厸闁割偅绻勫瓭婵犳鍣幏锟�
婵犵妲呴崹顏堝礈濠靛棭鐔嗘慨妞诲亾闁哄苯鎳橀崺鈧い鎺嗗亾闁宠閰i獮鎴﹀箛闂堟稒顔嗛梻浣告惈鐎氭悂骞忛敓锟�
婵犵妲呴崹顏堝礈濠靛棭鐔嗘慨妞诲亾鐎规洩缍侀獮瀣攽閸偂绱�
濠电姷顣介埀顒€鍟块埀顒勵棑缁辩偛顓兼径濠勭厬闂佺懓鐡ㄧ换鍕敂鐎涙ü绻嗘い鏍殔婢у弶绻濋~顔藉
闂佽楠搁崢婊堝礈濠靛鍋嬮柟鎯版閻鈹戦悩鎻掓殭闁奸潧缍婇弻銈夋嚍閵夈儱顫嶉梺缁樼壄缂嶄礁鐣峰▎鎾存櫢闁跨噦鎷�
UB闂備礁婀辩划顖炲礉濡ゅ懐宓侀柛銉㈡櫆鐎氭岸鎮楀☉娅虫垿锝為敓锟�
闂備浇澹堟ご绋款潖婵犳碍鐒鹃悗鐢电《閸嬫捇鐛崹顔句痪濠电姭鍋撻柨鐕傛嫹
闂佽楠哥粻宥夊垂閸濆嫸鑰块柛銏㈠殰
闂備礁鎲″缁樻叏妞嬪海绀婂璺虹灱閸楁碍绻涢崱妤€顒㈤柛鐐差槹缁绘稓绱欓悩鍝勫帯闂佺ǹ楠忛幏锟�
缂傚倸鍊烽悞锕傛偡閿曞倸鍨傛繝濠傚椤╅攱銇勯幒宥囶槮缂佹彃婀遍埀顒傚仯閸婃繄绱撳棰濇晩闁跨噦鎷�
©2017 www.mb5u.com婵犵妲呴崹顏堝礈濠靛棭鐔嗘慨妞诲亾鐎殿噮鍣i幃鈺呭箵閹烘挸鐦�
闂備浇銆€閸嬫捇鏌熼婊冾暭妞ゃ儻鎷�&闂備礁鎲$敮鎺懳涢弮鍫燁棅闁跨噦鎷�