2012-03-28 21 views
1

Meine Website zeigt empfohlene Seiten für Benutzer an. Gerade jetzt, ich vermute, eine Abfrage senden, um eine URL-Adressen zu erhalten. Es wird für meinen Server lästig sein, jede einzelne URL Adresse zu bekommen. Also, ich möchte 5 URL-Adressen von db und speichern sie in Sitzung als Array.Ersten Wert aus einem PHP-Array entfernen

array (
    url[0] => google.com/1 
    url[1] => google.com/2 
    url[2] => google.com/3 
    url[3] => google.com/4 
    url[4] => google.com/5 
) 

Es möchte so speichern, und ich möchte den ersten Wert, nachdem ein Benutzer besucht entfernen.

array (
    url[0] => google.com/2 
    url[1] => google.com/3 
    url[2] => google.com/4 
    url[3] => google.com/5 
) 

Es wird so nach dem ersten Schritt sein.

array (
    url[0] => google.com/5 
) 

Am Ende wird es nur eine links in der Sitzung sein. Danach sendet der Server eine Abfrage, um 5 verschiedene URL-Adressen zu erhalten. Kannst du mir eine Idee geben, wie ich das einrichten soll?

+0

Was Sie suchen, ist 'array_shift()'. Und es ist eine RTFM-Frage .. nicht wirklich für SO geeignet. –

+1

ist das Ihr Array-Index? –

+0

Es ist nicht nur RTFM Frage - es ist auch eine Frage der Logik hier beteiligt, die nicht offensichtlich ist. Zum Beispiel, wie Sie testen, auf welche URL ein Benutzer geklickt hat. Wie und wann soll getestet werden, ob SESSION URLs hat und wie ausgewählte URLs entfernt werden. Dann, wie und wann sql Abfrage für 5 URLs und wie man sie zu SESSION hinzufügen. Und wie man diese URLs richtig anzeigt. Diese sind nicht so offensichtliche Probleme für alle – Stefan

Antwort

1

Werfen Sie einen Blick auf array_shift

Beispiel für die Verwendung:

$array = array("google.com/1", "google.com/2", "google.com/3"); 
array_shift($array); 
print_r($array); 

Ausgang:

Array 
(
    [0] => google.com/2 
    [1] => google.com/3 
) 
+0

Gosh ... Es war wirklich einfach – Jake

+1

Warum negative Noten auf diese Antwort, es scheint eine perfekte? – Habib

+0

Raten Sie wurden downvoted, weil Sie mehrere Minuten nach der ersten Antworten –

1

du mit array_shift tun können.

$array = array (
    0 => google.com/1 
    1 => google.com/2 
    2 => google.com/3 
    3 => google.com/4 
    4 => google.com/5 
) 

Wenn Sie das tun

$url = array_shift($array); 

$url gesetzt werden, um google.com/1 und $array wird sich

$array = array (
    0 => google.com/2 
    1 => google.com/3 
    2 => google.com/4 
    3 => google.com/5 
) 
Verwandte Themen