Toon posts:

[PHP] if zoekfuntie en vergelijking in Array

Pagina: 1
Acties:

Onderwerpen


  • Erhnam
  • Registratie: januari 2000
  • Laatst online: 00:02

Erhnam

het Hardware-Hondje :]

Topicstarter
Ik vind dit een beetje lastig zo uit te leggen, vandaar dat ik mijn voorbeeld erbij pak. Ik probeer een programma te schrijven voor XBMC waarmee ik songs uit een collectie kan afspelen. De songs haal ik op en komen in een Array terug. De lijst met songs wil ik vervolgens bewerken.

De songs staan gesorteerd op label. De gebruiker krijgt vervolgens een mogelijk om een song te selecteren uit de lijst. De songs die nog in het album blijven staan (achterin de Array) moeten vervolgens opgeslagen worden. Probleem is dat ik wel de songid's nodig heb en deze ook in de volgorde van de labels zal moeten door sturen.

De onderstaande Array zal als gevolg van de weergave functie als volgt gesorteerd worden:

Best For Last (songid = 2)
Chasing Pavements (songid = 3)
Cold Shoulder (songid = 4)
Daydreams (songid = 1)


Stel dat de gebruiker nu Chasing Pavements selecteerd dan moeten 3, 4 en 1 achter elkaar terugkomen. Het liefste in een Array formaat weer terug.

Iemand enig idee waar ik zou moeten beginnen?

ps: De songid hoeven niet altijd op elkaar aan te sluiten. In dit voorbeeld zouden de songs ook id's 5, 43, 123 en 6654 kunnen hebben.

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
Array
(
    [end] => 4
    [songs] => Array
        (
            [0] => Array
                (
                    [fanart] => special://masterprofile/Thumbnails/Music/Fanart/12d07e97.tbn
                    [file] => /home/xbmc/Music/Adele - 19/101-adele-daydreams.mp3
                    [label] => Daydreams
                    [songid] => 1
                    [thumbnail] => special://masterprofile/Thumbnails/Music/0/05858c20.tbn
                )

            [1] => Array
                (
                    [fanart] => special://masterprofile/Thumbnails/Music/Fanart/12d07e97.tbn
                    [file] => /home/xbmc/Music/Adele - 19/102-adele-best_for_last.mp3
                    [label] => Best For Last
                    [songid] => 2
                    [thumbnail] => special://masterprofile/Thumbnails/Music/0/05858c20.tbn
                )

            [2] => Array
                (
                    [fanart] => special://masterprofile/Thumbnails/Music/Fanart/12d07e97.tbn
                    [file] => /home/xbmc/Music/Adele - 19/103-adele-chasing_pavements.mp3
                    [label] => Chasing Pavements
                    [songid] => 3
                    [thumbnail] => special://masterprofile/Thumbnails/Music/0/05858c20.tbn
                )

            [3] => Array
                (
                    [fanart] => special://masterprofile/Thumbnails/Music/Fanart/12d07e97.tbn
                    [file] => /home/xbmc/Music/Adele - 19/104-adele-cold_shoulder.mp3
                    [label] => Cold Shoulder
                    [songid] => 4
                    [thumbnail] => special://masterprofile/Thumbnails/Music/0/05858c20.tbn
                )

        )

    [start] => 0
    [total] => 4
)

[Voor 3% gewijzigd door Erhnam op 30-09-2010 19:45]

http://www.xbmcfreak.nl/


  • BillsGate
  • Registratie: oktober 2001
  • Laatst online: 15-09 14:09

BillsGate

...en er stralend uitzien

Waarom gebruik je de array-key niet als song-id?

Blaat het niet dan schaadt het niet...
Reflex Discoshow - Het beste wat je bruiloft kan overkomen


  • Erhnam
  • Registratie: januari 2000
  • Laatst online: 00:02

Erhnam

het Hardware-Hondje :]

Topicstarter
BillsGate schreef op donderdag 30 september 2010 @ 19:47:
Waarom gebruik je de array-key niet als song-id?
Je bedoelt dat ik ze eerst op naam sorteer en vervolgens afvang welke array key geselecteerd is en daarmee verder ga? Hoe bepaal ik welke array key een bepaald songid is?

[Voor 8% gewijzigd door Erhnam op 30-09-2010 19:57]

http://www.xbmcfreak.nl/


  • Hydra
  • Registratie: september 2000
  • Laatst online: 16-09 20:08
Euh. Dit is toch gewoon een kwestie van in een for loop zoeken tot je de juiste label gevonden hebt, en dan alles wat daarna nog in je collection zit in een andere array proppen en deze 'opslaan' (wat je daar dan ook mee bedoelt).

https://niels.nu


  • CRiMiNaL
  • Registratie: mei 2002
  • Laatst online: 11-09 18:23

CRiMiNaL

Witlof ^^

Als ik je goed begrijp wil je met array_splice het element uit de array halen en daarna het overgebleven resultaat weer weergeven?
Een stukje example code:
PHP:
1
$gekozen_element = array_splice($song_array['songs'], $positie_gekozen_element, 1);

Hierna zal $song_array de overgebleden songs bevatten, in dezelfde volgorde.

... MMORPG Addict.


  • Erhnam
  • Registratie: januari 2000
  • Laatst online: 00:02

Erhnam

het Hardware-Hondje :]

Topicstarter
CRiMiNaL schreef op donderdag 30 september 2010 @ 20:01:
Als ik je goed begrijp wil je met array_splice het element uit de array halen en daarna het overgebleven resultaat weer weergeven?
Een stukje example code:
PHP:
1
$gekozen_element = array_splice($song_array['songs'], $positie_gekozen_element, 1);

Hierna zal $song_array de overgebleden songs bevatten, in dezelfde volgorde.
Thanks, dit is inderdaad wat ik bedoelde. Hier kom ik wellicht wel mee uit de voeten!

http://www.xbmcfreak.nl/


  • RobIII
  • Registratie: december 2001
  • Laatst online: 23:56

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

Hou je wel even in de gaten dat je niet voor elke wissewasje een nieuw topic opent zodat wij straks je hele XBMC project hebben gemaakt voor/met je? Het is misschien verstandig om eens even wat tutorials er op na te slaan en je te verdiepen in de materie alvorens je aan de slag gaat. Dit is redelijk basic programmeerwerk en iets dat je met een klein beetje kennis en/of ervaring prima zelf kunt oplossen/bedenken.

[Voor 15% gewijzigd door RobIII op 30-09-2010 20:09]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Roses are red Violets are blue, Unexpected ‘{‘ on line 32.

Over mij

Pagina: 1


Nintendo Switch (OLED model) Apple iPhone 13 LG G1 Google Pixel 6 Call of Duty: Vanguard Samsung Galaxy S21 5G Apple iPad Pro (2021) 11" Wi-Fi, 8GB ram Nintendo Switch Lite

Tweakers vormt samen met Hardware Info, AutoTrack, Gaspedaal.nl, Nationale Vacaturebank, Intermediair en Independer DPG Online Services B.V.
Alle rechten voorbehouden © 1998 - 2021 Hosting door True

Tweakers maakt gebruik van cookies

Bij het bezoeken van het forum plaatst Tweakers alleen functionele en analytische cookies voor optimalisatie en analyse om de website-ervaring te verbeteren. Op het forum worden geen trackingcookies geplaatst. Voor het bekijken van video's en grafieken van derden vragen we je toestemming, we gebruiken daarvoor externe tooling die mogelijk cookies kunnen plaatsen.

Meer informatie vind je in ons cookiebeleid.

Sluiten

Forum cookie-instellingen

Bekijk de onderstaande instellingen en maak je keuze. Meer informatie vind je in ons cookiebeleid.

Functionele en analytische cookies

Deze cookies helpen de website zijn functies uit te voeren en zijn verplicht. Meer details

janee

    Cookies van derden

    Deze cookies kunnen geplaatst worden door derde partijen via ingesloten content en om de gebruikerservaring van de website te verbeteren. Meer details

    janee