- Milyen asztali (teljes vagy fél-) gépet vegyek?
- Milyen billentyűzetet vegyek?
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- OLED TV topic
- Apple MacBook
- Hogy is néznek ki a gépeink?
- Sugárkövetés nélküli sugárkövetés felé menetel az új PlayStation
- 3D nyomtatás
- Nvidia GPU-k jövője - amit tudni vélünk
- Autós kamerák
Új hozzászólás Aktív témák
-
Sk8erPeter
nagyúr
válasz
tothjozsi96 #16242 üzenetére
Szívesen!
Jó a felvetés, legegyszerűbb (még ha nem is szép) megoldás jelen esetben az lenne, ha maga az azonosító lenne a tömbindex, és annak értéke pedig az adatokat tartalmazó tömb lenne. Ez továbbra is tömbök tömbje, ahogy a korábbi megoldás is volt, csak annyi különbséggel, hogy itt explicite meghatározod a tömbindexet, nem pedig az automatikus számozásra bízod (mivel eddig numerikus indexek voltak használva, 0, 1, 2, ...).
Tehát valahogy így, pszeudokóddal:$conversations = array(
AZONOSÍTÓ1 => array(
"text" => "asdasd",
),
AZONOSÍTÓ2 => array(
"text" => "blabla",
),
AZONOSÍTÓ3 => array(
"text" => "qweqwe",
),
);az AZONOSÍTÓ1, AZONOSÍTÓ2, stb. kulcs lehet szám, vagy lehet egy string is (attól függően, milyen típusú azonosítót használsz).
Akár redundánsan is tárolhatod az azonosítót, úgy, hogy pl.:AZONOSÍTÓ3 => array(
'id' => AZONOSÍTÓ3,
'text' => 'qweqwe',
),Ez bizonyos esetekben leegyszerűsítheti a dolgot, persze figyelni kell rá, hogy ez konzisztens maradjon, ne legyen egyik helyen ilyen azonosító, másik helyen amolyan.
Egyébként tényleg érdemes lehet bevezetni egy osztályt, hogy szebben tudd tárolni és kezelni az adatokat.Jelen esetben ezzel az egyszerű megoldással tehát úgy tudnád törölni, hogy egyszerűen írsz egy unset($conversations[AZONOSÍTÓ3]); sort, ezzel kitörölve az adott tömbindexet, és ezután replace-eled a korábbi tömböt a memcache-ben, és meg is vagy.
Itt is egyébként figyelni kell arra, nehogy egy másik csatlakozott kliens egy korábbi kiolvasott adatból tudjon beírni, úgy, hogy visszarakja valahogy ezt az értéket a tömbbe...
Ezért is mondom, hogy szebb megoldást továbbra is valamilyen NoSQL-megoldással lehetne készíteni.
Új hozzászólás Aktív témák
- !AKCIÓ! Garanciás Klipsch R-120SW 30cm aktív mélysugárzó SubWoofer - 200W RMS / 400W Peak
- Eladó megbízható, szép Toshiba Satelite C850
- Csere - Beszámítás! Gamer PC : I5-14400F / 32GB DDR5 / RTX 4060 Ti / 1TB M.2 SSD
- Ryzen 5600, 32GB RAM, EVGA 3080 Gamer PC
- Asus RT-AC68U router eladó (3 darab - egyben vagy külön is)
- REFURBISHED és ÚJ - Lenovo ThinkPad 40AS USB-C docking station (akár 3x4K felbontás)
- BESZÁMÍTÁS! ASUS A620M R5 7500F 32GB DDR5 1TB SSD RTX 4070 SUPER 12GB Zalman M4 Corsair 650W
- BESZÁMÍTÁS! ASRock Z370 i7 9700KF 16GB DDR4 512GB SSD RX 7600 XT 16GB ZALMAN I3 NEO ADATA 600W
- BESZÁMÍTÁS! Asrock B365M i5 9600KF 16GB DDR4 250GB SSD 1TB HDD RX 5700XT 8GB Zalman N5 FSP 700W
- BESZÁMÍTÁS! MSI B550M R7 5700X 32GB DDR4 1TB SSD RTX 4070 12GB NZXT H710I Be Quiet 650W
Állásajánlatok
Cég: FOTC
Város: Budapest
Cég: CAMERA-PRO Hungary Kft.
Város: Budapest