Bearbeiten Sie Dokumente mit der REST-API in PHP.

Wir können den Inhalt vorhandener Word Dokumente, Excel-Tabellen oder Textdateien programmgesteuert in der Cloud hinzufügen, bearbeiten oder löschen. Wir können die Textformatierung in den Dokumenten auch mit PHP anwenden, ohne eine externe Anwendung installieren zu müssen. In diesem Artikel erfahren Sie, wie Sie Dokumente mithilfe einer REST-API in PHP bearbeiten.

Die folgenden Themen sollen in diesem Artikel behandelt werden:

Dokumenteditor-REST-API und PHP-SDK

Wir werden die PHP SDK of GroupDocs.Editor Cloud API zum Ändern der Dateien DOCX, XLSX und TXT verwenden. Es ermöglicht die Bearbeitung von Dokumenten der unterstützten Formate. Bitte installieren Sie es mit dem folgenden Befehl in der Konsole:

composer require groupdocscloud/groupdocs-editor-cloud

Nach der Installation verwenden Sie bitte autoload von Composers, um das SDK wie unten gezeigt zu verwenden:

require_once('vendor/autoload.php');

Bitte holen Sie sich Ihre Kunden-ID und Ihr Geheimnis aus dem Dashboard, bevor Sie die genannten Schritte ausführen. Sobald Sie Ihre ID und Ihr Geheimnis haben, fügen Sie den Code wie unten gezeigt ein:

// Dieses Codebeispiel zeigt, wie man eine Client-ID und ein Geheimnis in den Code einfügt.
static $ClientId = '659fe7da-715b-4744-a0f7-cf469a392b73';
static $ClientSecret = 'b377c36cfa28fa69960ebac6b6e36421';
static $ApiBaseUrl = 'https://api.groupdocs.cloud';
static $MyStorage = '';

// Initialisierung der Konfiguration
$configuration = new GroupDocs\Editor\Configuration();

// Festlegen der Konfigurationen
$configuration->setAppSid(CommonUtils::$ClientId);
$configuration->setAppKey(CommonUtils::$ClientSecret);
$configuration->setApiBaseUrl(CommonUtils::$ApiBaseUrl);

Bearbeiten Sie Word Dokumente mit der REST-API in PHP

Wir können Word Dokumente bearbeiten, indem wir die folgenden einfachen Schritte befolgen:

  1. Hochladen der DOCX-Datei in die Cloud
  2. Bearbeiten das hochgeladene Word Dokument
  3. Herunterladen der bearbeiteten Datei

Laden Sie das Dokument hoch

Zuerst laden wir die DOCX-Datei mit dem unten angegebenen Codebeispiel in die Cloud hoch:

// Dieses Codebeispiel zeigt, wie eine DOCX-Datei in die Cloud hochgeladen wird.
// Initialisieren Sie die API
$apiInstance = new GroupDocs\Editor\FileApi($configuration);

// Pfad der Eingabedatei
$file = "C:\\Files\\Editor\\sample.docx";

// Anfrage zum Hochladen einer Datei
$request = new GroupDocs\Editor\Model\Requests\uploadFileRequest("sample.docx", $file, self::$MyStorage, null);

// Datei hochladen
$response = $apiInstance->uploadFile($request);

Dadurch ist die hochgeladene DOCX-Datei im Dateienbereich des Dashboards in der Cloud verfügbar.

Bearbeiten Sie ein Word Dokument in PHP

Jetzt bearbeiten wir den Inhalt der hochgeladenen DOCX-Datei, indem wir die folgenden Schritte ausführen:

  • Erstellen Sie zunächst Instanzen von FileApi und EditApi.
  • Geben Sie als Nächstes den hochgeladenen DOCX-Dateipfad an.
  • Laden Sie die Datei dann als HTML Dokument herunter.
  • Lesen Sie als Nächstes die heruntergeladene HTML-Datei als Zeichenfolge.
  • Bearbeiten Sie dann den HTML-Code und speichern Sie das aktualisierte HTML Dokument.
  • Laden Sie anschließend die aktualisierte HTML-Datei hoch.
  • Speichern Sie abschließend HTML mit der Methode EditApi.save() wieder in DOCX.

Das folgende Codebeispiel zeigt, wie Sie ein Word Dokument mithilfe einer REST-API in PHP bearbeiten.

// Dieses Codebeispiel zeigt, wie ein Word Dokument bearbeitet wird
// Erstellen Sie die erforderlichen API-Instanzen
$editApi = new GroupDocs\Editor\EditApi($configuration);
$fileApi = new GroupDocs\Editor\FileApi($configuration);

// Laden Sie die hochgeladene DOCX-Datei in den bearbeitbaren Zustand
$fileInfo = new Model\FileInfo();
$fileInfo->setFilePath("sample.docx");

// Passwort festlegen, falls passwortgeschützt
// $fileInfo->setPassword("password");

// Ladeoptionen definieren
$loadOptions = new Model\WordProcessingLoadOptions();
$loadOptions->setFileInfo($fileInfo);
$loadOptions->setOutputPath("");
$loadResult = $editApi->load(new Requests\loadRequest($loadOptions));

// Laden Sie das HTML Dokument herunter
$htmlFile = $fileApi->downloadFile(new Requests\downloadFileRequest($loadResult->getHtmlPath()));
$html = file_get_contents($htmlFile->getRealPath());

// Text bearbeiten
$html = str_replace("Title of the document", "Welcome", $html);
$html = str_replace("Subtitle #1", "This is Subtitle", $html);

// Laden Sie HTML zurück in den Speicher hoch
file_put_contents($htmlFile->getRealPath(), $html);
$uploadRequest = new Requests\uploadFileRequest($loadResult->getHtmlPath(), $htmlFile->getRealPath());
$fileApi->uploadFile($uploadRequest);

// Speichern Sie HTML zurück in DOCX
$saveOptions = new Model\WordProcessingSaveOptions();
$saveOptions->setFileInfo($fileInfo);
$saveOptions->setOutputPath("edited.docx");
$saveOptions->setHtmlPath($loadResult->getHtmlPath());
$saveOptions->setResourcesPath($loadResult->getResourcesPath());
$saveResult = $editApi->save(new Requests\saveRequest($saveOptions));

// Erledigt.
echo "Document edited: " . $saveResult->getPath();
Bearbeiten Sie Word Dokumente mit der REST-API in PHP.

Bearbeiten Sie ein Word Dokument mit einer REST-API in PHP.

Laden Sie die aktualisierte Datei herunter

Das obige Codebeispiel speichert die bearbeitete Word-Datei (DOCX) in der Cloud. Es kann mit dem folgenden Codebeispiel heruntergeladen werden:

// Dieses Codebeispiel zeigt, wie Sie eine DOCX-Datei aus der Cloud herunterladen.
// Initialisieren Sie die API
$apiInstance = new GroupDocs\Editor\FileApi($configuration);

// Dateianforderung herunterladen
$request = new GroupDocs\Editor\Model\Requests\DownloadFileRequest("edited.docx", self::$MyStorage, null);

// Download-Datei
$response = $apiInstance->downloadFile($request);

Ändern Sie Excel-Tabellen mithilfe der REST-API in PHP

Wir können den Inhalt einer Excel-Tabelle bearbeiten, indem wir die zuvor genannten Schritte ausführen. Wir müssen jedoch lediglich den hochgeladenen XLSX-Dateipfad angeben.

Das folgende Codebeispiel zeigt, wie Sie Excel-Tabellendaten mithilfe einer REST-API in PHP bearbeiten.

// Dieses Codebeispiel zeigt, wie eine Excel-Tabelle bearbeitet wird
// Erstellen Sie die erforderlichen API-Instanzen
$editApi = new GroupDocs\Editor\EditApi($configuration);
$fileApi = new GroupDocs\Editor\FileApi($configuration);

// Laden Sie die hochgeladene XLSX-Datei in den bearbeitbaren Zustand
$fileInfo = new Model\FileInfo();
$fileInfo->setFilePath("sample.xlsx"); 

// Ladeoptionen definieren
$loadOptions = new Model\SpreadsheetLoadOptions();
$loadOptions->setFileInfo($fileInfo);
$loadOptions->setOutputPath("");
$loadOptions->setWorksheetIndex(0);
$loadResult = $editApi->load(new Requests\loadRequest($loadOptions));

// Laden Sie das HTML Dokument herunter
$htmlFile = $fileApi->downloadFile(new Requests\downloadFileRequest($loadResult->getHtmlPath()));
$html = file_get_contents($htmlFile->getRealPath());

// Etwas bearbeiten...
$html = str_replace("Region", "Country", $html);
$html = str_replace("Europe", "France", $html);
$html = str_replace("Asia", "China", $html);
$html = str_replace("South America", "Argentina", $html);

// Laden Sie HTML zurück in den Speicher hoch
file_put_contents($htmlFile->getRealPath(), $html);
$uploadRequest = new Requests\uploadFileRequest($loadResult->getHtmlPath(), $htmlFile->getRealPath());
$fileApi->uploadFile($uploadRequest);

// Speichern Sie HTML zurück in XLSX
$saveOptions = new Model\SpreadsheetSaveOptions();
$saveOptions->setFileInfo($fileInfo);
$saveOptions->setOutputPath("edited.xlsx");
$saveOptions->setHtmlPath($loadResult->getHtmlPath());
$saveOptions->setResourcesPath($loadResult->getResourcesPath());
$saveResult = $editApi->save(new Requests\saveRequest($saveOptions));

// Erledigt.
echo "Document edited: " . $saveResult->getPath();
Ändern Sie Excel-Tabellen mithilfe der REST-API in PHP.

Ändern Sie die Excel-Tabelle mithilfe einer REST-API in PHP.

Aktualisieren Sie Textdateien mithilfe der REST-API in PHP

Wir können den Inhalt einer Textdatei auch aktualisieren, indem wir die zuvor genannten Schritte ausführen. Wir müssen jedoch nur den Pfad der hochgeladenen TXT-Datei angeben.

Das folgende Codebeispiel zeigt, wie Sie eine Textdatei mithilfe einer REST-API in PHP bearbeiten.

// Dieses Codebeispiel zeigt, wie eine Textdatei bearbeitet wird
// Erstellen Sie die erforderlichen API-Instanzen
$editApi = new GroupDocs\Editor\EditApi($configuration);
$fileApi = new GroupDocs\Editor\FileApi($configuration);

// Laden Sie die hochgeladene TXT-Datei in den bearbeitbaren Zustand
$fileInfo = new Model\FileInfo();
$fileInfo->setFilePath("sample.txt");        
$loadOptions = new Model\TextLoadOptions();
$loadOptions->setFileInfo($fileInfo);
$loadOptions->setOutputPath("");
$loadResult = $editApi->load(new Requests\loadRequest($loadOptions));

// Laden Sie das HTML Dokument herunter
$htmlFile = $fileApi->downloadFile(new Requests\downloadFileRequest($loadResult->getHtmlPath()));
$html = file_get_contents($htmlFile->getRealPath());

// Text bearbeiten
$html = str_replace("Title of the document", "Welcome", $html);
$html = str_replace("Subtitle #1", "This is Subtitle", $html);

// Laden Sie HTML zurück in den Speicher hoch
file_put_contents($htmlFile->getRealPath(), $html);
$uploadRequest = new Requests\uploadFileRequest($loadResult->getHtmlPath(), $htmlFile->getRealPath());
$fileApi->uploadFile($uploadRequest);

// Speichern Sie HTML zurück in TXT
$saveOptions = new Model\TextSaveOptions();
$saveOptions->setFileInfo($fileInfo);
$saveOptions->setOutputPath("edited.txt");
$saveOptions->setHtmlPath($loadResult->getHtmlPath());
$saveOptions->setResourcesPath($loadResult->getResourcesPath());
$saveResult = $editApi->save(new Requests\saveRequest($saveOptions));

// Erledigt.
echo "Document edited: " . $saveResult->getPath();
Aktualisieren Sie Textdateien mithilfe der REST-API in PHP.

Aktualisieren Sie die Textdatei mithilfe einer REST-API in PHP.

Versuchen Sie es online

Bitte probieren Sie die folgenden kostenlosen Online Dokumentbearbeitungstools aus, die mit der oben genannten API entwickelt wurden.

Abschluss

In diesem Artikel haben wir gelernt, wie man:

  • den Inhalt von Word-, Excel oder Textdateien in PHP bearbeiten oder ändern;
  • Laden Sie die DOCX-Datei in die Cloud hoch.
  • Laden Sie die aktualisierte Word-Datei aus der Cloud herunter.

Außerdem können Sie mithilfe der Dokumentation mehr über die GroupDocs.Editor Cloud API erfahren. Wir bieten auch einen Abschnitt API-Referenz an, mit dem Sie unsere APIs direkt über den Browser visualisieren und mit ihnen interagieren können. Bei Unklarheiten können Sie uns gerne im Forum kontaktieren.

Siehe auch