機能要望 > その他 > SC_CartSessionをどうにかした |
その他
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
mmmmm |
投稿日時: 2010/4/16 23:05
対応状況: −−−
|
新米 ![]() ![]() 登録日: 2010/2/3 居住地: 投稿: 7 |
SC_CartSessionをどうにかした 何処に書けばいいかよくわからないのでここらへんに。
なんであんなことになってるのだろうと非常に気になっていたSC_CartSessionをどうにかしてみました。 正式版2.4.3用。 http://file.yuubiseiharukana.blog.shinobi.jp/20100416-SC_CartSession.txt http://yuubiseiharukana.blog.shinobi.jp/Entry/282/ ・$_SESSION['cart'][0]、$_SESSION['cart'][1]…となっていた商品リストを$_SESSION['cart']['products']配下に入れた ・商品の配列キーを連番ではなく商品IDにした ・cart_noも面倒なので商品IDにした ・SC_CartSession::getNextCartID()、SC_CartSession::getMax()は不要なので削除 ・ereg()を排除 注意事項 ・あんまりデバッグしてない ・売り切れとかロック関連は何やってるのかよくわからなかったので概ね適当 ・一部ロジックが修正必須 ・MySQLで作ったのでPostgreSQLだと動かなくなるかもしれない ・$_SESSION['cart']を直接どうこうしていた場合動かなくなるかもしれない ・エラーハンドラとかrunkitとかのチート機能を使っていた場合動かなくなるかもしれない ・SC_CartSession::getNextCartID()、SC_CartSession::getMax()を直接使用していた場合動かなくなるかもしれない ・商品配列のキーが数値連番である前提の実装だった場合動かなくなるかもしれない ・よくわからないけどどこかで動かなくなるかもしれない いや、実はなにか重大な理由があってあのような作りになっているんだよ、とか言われたりする可能性もないでもないですが聞かなかったことにします。 そもそも明らかにSQLのほうがボトルネックなので正直自己満足レベル。 |
seasoft |
投稿日時: 2010/4/19 11:39
対応状況: −−−
|
神 ![]() ![]() 登録日: 2008/6/4 居住地: 投稿: 7369 |
Re: SC_CartSessionをどうにかした 貴重な情報ありがとうございます。
SC_CartSession は、ホント どうにかしたいですねぇ・・・ foreach を使った実装には賛同します。 > ・商品の配列キーを連番ではなく商品IDにした 欠番を許容する数値でも良いのかなと思いました。カスタマイズによっては、id が長くなったり複雑になったりするケースを経験してきたので。参考まで。
|
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |