Merkmale
- Mehrere Authentifizierungsverfahren – OAuth 2.0 (nutzerspezifischer Zugriff), Service Account (Server-zu-Server-Kommunikation), API-Key (öffentliche Daten)
- Flüssige API – Intuitive Datenverarbeitung per Method-Chaining
- Laravel-Collection-Integration – Wandelt Google-Sheets-Daten in Laravel-Collections um. Array-Verarbeitung wird einfach.
- Erweiterbarkeit – Über das Macro-System lassen sich benutzerdefinierte Methoden zur Facade hinzufügen.
- Google-Drive-Integration – Verwaltung und Auflistung von Spreadsheets
Typische Anwendungsfälle
- Nutzer-Dashboards – Daten aus Google Sheets anzeigen und bearbeiten
- Datenimport/-export – Massendatentransfer zwischen Laravel-Anwendung und Google Sheets
- Automatisierte Berichte – Reports programmatisch erzeugen und aktualisieren
- Multi-Nutzer-Anwendungen – Nutzer verwalten jeweils eigene Google Sheets
Designphilosophie
Der Hauptzweck dieses Pakets ist das Lesen aus Google Sheets. Anstatt vor dem Lesen viele Filterkriterien festzulegen, werden zunächst alle Daten als Laravel-Collection geladen und danach in Laravel weiterverarbeitet.Systemvoraussetzungen
- PHP >= 8.3
- Laravel >= 12.0
Installation
Google-APIs aktivieren
Aktivieren Sie in der Google Cloud Console die folgenden APIs:
- Google Sheets API
- Google Drive API
Authentifizierungsverfahren auswählen und konfigurieren
Wählen Sie eines der drei Verfahren:
- Service Account – Für Server-zu-Server-Kommunikation und Automatisierung
- OAuth 2.0 – Für nutzerspezifischen Zugriff
- API-Key – Nur für öffentliche Daten
Auswahl des Authentifizierungsverfahrens
| Verfahren | Anwendung | Nutzeraktion | Zugriffsbereich | Schwierigkeit |
|---|---|---|---|---|
| Service Account | Server-zu-Server-Kommunikation und Automatisierung | Nicht nötig | Freigegebene Spreadsheets | Mittel |
| OAuth 2.0 | Nutzer-orientierte Anwendungen | Zustimmung erforderlich | Nutzerspezifische Sheets | Hoch |
| API-Key | Nur öffentliche Daten | Nicht nötig | Nur öffentliche Spreadsheets | Niedrig |
Grundlegende Verwendung
Betrachten Sie folgendes Spreadsheet-Beispiel:| id | name | |
|---|---|---|
| 1 | name1 | mail1 |
| 2 | name2 | mail2 |
https://docs.google.com/spreadsheets/d/{spreadsheetID}/...
Die spreadsheetId entnehmen Sie der URL.
Service Account
Bei Verwendung eines Service Accounts ist keine Token-Konfiguration erforderlich.OAuth
Bei OAuth-Authentifizierung müssen Sie das Access-Token des Nutzers setzen.Sheet-Werte mit Header als Schlüssel abrufen (empfohlen)
Die Umwandlung in eine Collection ist einfach und die weitere Verarbeitung flexibel – wir empfehlen dieses Vorgehen.Verwendung der A1-Notation
Zur A1-Notation
Die A1-Notation ist die Standardmethode in Google Sheets, um Zellen oder Bereiche zu benennen (z. B. „A1”, „A1:B2”).- „A1” bezeichnet die Zelle in Spalte A, Zeile 1.
- „A1:B2” bezeichnet den Bereich (rechteckig) von Zelle A1 bis B2.
- „A:B” bezeichnet alle Zeilen der Spalten A und B.
Nächste Schritte
- Service-Account-Authentifizierung – Die gebräuchlichste Methode
- OAuth-2.0-Authentifizierung – Nutzerspezifischer Zugriff
- laravel-google-sheets
- Demo-Projekt – Beispiele von Laravel 5.5 bis 13
- Verwandtes Paket: Google Search Console API for Laravel