Aktueller Standort: Startseite> Neueste Artikel> Einfaches Beispiel für die Verwendung von Array_Slice zur Implementierung der Paging -Funktion

Einfaches Beispiel für die Verwendung von Array_Slice zur Implementierung der Paging -Funktion

gitbox 2025-05-26

Was ist Array_Slice ?

Array_Slice ist eine integrierte Funktion in PHP, um ein kontinuierliches Stück Elemente aus einem Array zu extrahieren. Seine grundlegende Syntax ist:

 array_slice(array $array, int $offset, ?int $length = null, bool $preserve_keys = false): array
  • $ Array : Das zu abgefangene Array

  • $ offset : Startposition, 0 bedeutet ab dem ersten Element ab dem ersten Element

  • $ Länge : Die Länge des Abfangs. Wenn nicht angegeben, liegt der Standard am Ende des Arrays.

  • $ PREISERVE_KEYS : Ob Sie den Schlüsselnamen des ursprünglichen Arrays behalten, standardmäßig auf False


Verwenden Sie Array_Slice , um Pagination zu implementieren

Angenommen, wir haben ein Array mit 100 Datenstücke, und jetzt müssen wir die Paging -Funktion zum Anzeigen von 10 Datenprodukten pro Seite implementieren.

1. Berechnen Sie Paging -Parameter

  • Aktuelle Seitennummer $ Seite (ab 1)

  • Anzahl der angezeigten Zeichen pro Seite $ pageszesize

  • Berechnen Sie den Ausgangspunkt von Array Intercept $ offset = ($ Seite - 1) * $ pageSize

2. Fassen Sie die Daten der aktuellen Seite ab

Verwenden Sie einfach Array_Slice , um die Daten der aktuellen Seite vom Array abzufangen.


Beispielcode

 <?php
// Simulieren Sie das Datenarray
$data = range(1, 100); // Generieren inklusive 1 ankommen 100 Array von Zahlen

// Holen Sie sich die aktuelle Seitennummer,Der Standard ist der erste 1 Seite
$page = isset($_GET['page']) ? (int)$_GET['page'] : 1;
$page = max($page, 1); // 确保Seite码不小于 1

// 每Seite显示多少条
$pageSize = 10;

// Offset berechnen
$offset = ($page - 1) * $pageSize;

// verwenden array_slice 截取当前Seite的数据
$pageData = array_slice($data, $offset, $pageSize);

// 输出当前Seite的数据
foreach ($pageData as $item) {
    echo "Datenelemente:$item<br>";
}

// 生成分Seite链接
$totalPages = ceil(count($data) / $pageSize);

echo "<div>";
for ($i = 1; $i <= $totalPages; $i++) {
    if ($i == $page) {
        echo "<strong>$i</strong> ";
    } else {
        echo "<a href=\"https://gitbox.net/page.php?page=$i\">$i</a> ";
    }
}
echo "</div>";
?>

Laufeffekt

Zugriff auf Seite.Php? Page = 1 Zeigt 10 Datenstücke auf Seite 1 an, auf Seite auf Seite zu greifen. Page = 2 zeigt den Inhalt von Seite 2 und so weiter an.


Zusammenfassung

Unter Verwendung von PHP -Funktion von PHP in Kombination mit einfachen Paging -Berechnungen kann die Paging -Funktion von Arrays problemlos implementiert werden. Obwohl Paging -Daten normalerweise aus einer Datenbank in der tatsächlichen Entwicklung stammen, ist Array_Slice eine sehr leichte und effiziente Lösung für kleine Datensätze oder zwischengespeicherte Daten.

Denken Sie daran, dass der entscheidende Punkt darin besteht, den korrekten Offset $ Offset zu berechnen und die Anzahl der pro Seite angezeigten Balken zu steuern, damit der Paging -Effekt leicht erreicht werden kann.