Path: csiph.com!usenet.pasdenom.info!news.albasani.net!news.teledata-fn.de!newsfeed.arcor.de!newsspool4.arcor-online.net!news.arcor.de.POSTED!not-for-mail Content-Type: text/plain; charset="ISO-8859-1" Message-ID: <1401150.AFRqVoOGUt@PointedEars.de> From: Thomas 'PointedEars' Lahn Reply-To: Thomas 'PointedEars' Lahn Organization: PointedEars Software (PES) Date: Thu, 03 May 2012 18:05:59 +0200 User-Agent: KNode/4.4.11 Content-Transfer-Encoding: 7Bit X-Face: %i>XG-yXR'\"2P/C_aO%~;2o~?g0pPKmbOw^=NT`tprDEf++D.m7"}HW6.#=U:?2GGctkL,f89@H46O$ASoW&?s}.k+&. Followup-To: comp.lang.php MIME-Version: 1.0 Lines: 67 NNTP-Posting-Date: 03 May 2012 18:06:00 CEST NNTP-Posting-Host: 9cd52f50.newsspool4.arcor-online.net X-Trace: DXC=GUR^[?Sli84lIh70@ In a simple quote cart I track items in a session. > > $_SESSION['quote'][##] = {data} > > Which increments the ## for each added item. ISTM you are looking for $_SESSION['quote'][] = $data; instead, which automatically increments the index of the item in $_SESSION['quote']. On the other hand, if the real code was $_SESSION['quote'][$index] = $items[$index]; you might want to consider simplifying the loop to one statement: $_SESSION['quote'] = $items; > At the time when the client wants to remove an item from the cart I just > clear the {data} from $_SESSION['quote'][item_id] = ''; Consider unset($_SESSION['quote'][$item_id]); instead. > The issue i run into is when I want to display the cart, i just cant > step thru the array without seeing if a particular item is '', (Please try to work on your spelling.) > which works but would like to find a more 'elegant' way. After the above, you might want to use if (!isset($_SESSION['quote'][$item_id]) { /* Item with $item_id exists */ } This approach is more precise in combination with is_null(). > With all that said, is there a way to remove the item from the array > rather then clear the items data. ^ That is _not_ a question. > I have looked thru the 50+ different array functions and can't seem to > find the right tool. Maybe a combination I am not seeing. There is: PointedEars -- realism: HTML 4.01 Strict evangelism: XHTML 1.0 Strict madness: XHTML 1.1 as application/xhtml+xml -- Bjoern Hoehrmann