PHP에서 REST API를 사용하여 문서를 편집합니다.

클라우드에서 프로그래밍 방식으로 기존 Word 문서, Excel 스프레드시트 또는 텍스트 파일의 콘텐츠를 추가, 편집 또는 삭제할 수 있습니다. 또한 외부 응용 프로그램을 설치하지 않고도 PHP를 사용하여 문서에 텍스트 서식을 적용할 수 있습니다. 이 기사에서는 PHP에서 REST API를 사용하여 문서를 편집하는 방법을 배웁니다.

이 문서에서는 다음 항목을 다룹니다.

문서 편집기 REST API 및 PHP SDK

DOCX, XLSXTXT 파일을 수정하기 위해 GroupDocs.Editor Cloud의 PHP SDK API를 사용할 것입니다. 지원되는 형식의 문서를 편집할 수 있습니다. 콘솔에서 다음 명령을 사용하여 설치하십시오.

composer require groupdocscloud/groupdocs-editor-cloud

설치 후 아래와 같이 Composers의 자동 로드를 사용하여 SDK를 사용하십시오.

require_once('vendor/autoload.php');

언급된 단계를 따르기 전에 대시보드에서 클라이언트 ID와 암호를 가져오십시오. ID와 시크릿이 있으면 아래와 같이 코드를 추가합니다.

// 이 코드 예제는 코드에 클라이언트 ID와 암호를 추가하는 방법을 보여줍니다.
static $ClientId = '659fe7da-715b-4744-a0f7-cf469a392b73';
static $ClientSecret = 'b377c36cfa28fa69960ebac6b6e36421';
static $ApiBaseUrl = 'https://api.groupdocs.cloud';
static $MyStorage = '';

// 구성 초기화
$configuration = new GroupDocs\Editor\Configuration();

// 구성 설정
$configuration->setAppSid(CommonUtils::$ClientId);
$configuration->setAppKey(CommonUtils::$ClientSecret);
$configuration->setApiBaseUrl(CommonUtils::$ApiBaseUrl);

PHP에서 REST API를 사용하여 Word 문서 편집

아래에 언급된 간단한 단계에 따라 Word 문서를 편집할 수 있습니다.

  1. 업로드 DOCX 파일을 클라우드로
  2. 편집 업로드된 Word 문서
  3. 다운로드 편집된 파일

문서 업로드

먼저 아래 제공된 코드 샘플을 사용하여 DOCX 파일을 클라우드에 업로드합니다.

// 이 코드 예제는 DOCX 파일을 클라우드에 업로드하는 방법을 보여줍니다.
// API 초기화
$apiInstance = new GroupDocs\Editor\FileApi($configuration);

// 입력 파일 경로
$file = "C:\\Files\\Editor\\sample.docx";

// 파일 요청 업로드
$request = new GroupDocs\Editor\Model\Requests\uploadFileRequest("sample.docx", $file, self::$MyStorage, null);

// 파일 업로드
$response = $apiInstance->uploadFile($request);

결과적으로 업로드된 DOCX 파일은 클라우드 대시보드의 파일 섹션에서 사용할 수 있습니다.

PHP에서 Word 문서 편집

이제 아래 단계에 따라 업로드된 DOCX 파일의 내용을 편집합니다.

  • 먼저 FileApiEditApi의 인스턴스를 생성합니다.
  • 다음으로 업로드된 DOCX 파일 경로를 제공합니다.
  • 그런 다음 파일을 HTML 문서로 다운로드합니다.
  • 다음으로 다운로드한 HTML 파일을 문자열로 읽습니다.
  • 그런 다음 HTML을 편집하고 업데이트된 HTML 문서를 저장합니다.
  • 그런 다음 업데이트된 HTML 파일을 업로드합니다.
  • 마지막으로 EditApi.save() 메서드를 사용하여 HTML을 다시 DOCX에 저장합니다.

다음 코드 샘플은 PHP에서 REST API를 사용하여 Word 문서를 편집하는 방법을 보여줍니다.

// 이 코드 예제는 Word 문서를 편집하는 방법을 보여줍니다.
// 필요한 API 인스턴스 생성
$editApi = new GroupDocs\Editor\EditApi($configuration);
$fileApi = new GroupDocs\Editor\FileApi($configuration);

// 업로드된 DOCX 파일을 편집 가능한 상태로 로드
$fileInfo = new Model\FileInfo();
$fileInfo->setFilePath("sample.docx");

// 암호로 보호된 경우 암호 설정
// $fileInfo->setPassword("비밀번호");

// 로드 옵션 정의
$loadOptions = new Model\WordProcessingLoadOptions();
$loadOptions->setFileInfo($fileInfo);
$loadOptions->setOutputPath("");
$loadResult = $editApi->load(new Requests\loadRequest($loadOptions));

// HTML 문서 다운로드
$htmlFile = $fileApi->downloadFile(new Requests\downloadFileRequest($loadResult->getHtmlPath()));
$html = file_get_contents($htmlFile->getRealPath());

// 텍스트 수정
$html = str_replace("Title of the document", "Welcome", $html);
$html = str_replace("Subtitle #1", "This is Subtitle", $html);

// HTML을 저장소에 다시 업로드
file_put_contents($htmlFile->getRealPath(), $html);
$uploadRequest = new Requests\uploadFileRequest($loadResult->getHtmlPath(), $htmlFile->getRealPath());
$fileApi->uploadFile($uploadRequest);

// HTML을 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));

// 완료.
echo "Document edited: " . $saveResult->getPath();
PHP에서 REST API를 사용하여 Word 문서를 편집합니다.

PHP에서 REST API를 사용하여 Word 문서를 편집합니다.

업데이트된 파일 다운로드

위의 코드 샘플은 편집된 Word 파일(DOCX)을 클라우드에 저장합니다. 다음 코드 샘플을 사용하여 다운로드할 수 있습니다.

// 이 코드 예제는 클라우드에서 DOCX 파일을 다운로드하는 방법을 보여줍니다.
// API 초기화
$apiInstance = new GroupDocs\Editor\FileApi($configuration);

// 파일 요청 다운로드
$request = new GroupDocs\Editor\Model\Requests\DownloadFileRequest("edited.docx", self::$MyStorage, null);

// 파일 다운로드
$response = $apiInstance->downloadFile($request);

PHP에서 REST API를 사용하여 Excel 스프레드시트 수정

앞에서 언급한 단계에 따라 Excel 시트의 내용을 편집할 수 있습니다. 그러나 업로드된 XLSX 파일 경로만 제공하면 됩니다.

다음 코드 샘플은 PHP에서 REST API를 사용하여 Excel 시트 데이터를 편집하는 방법을 보여줍니다.

// 이 코드 예제는 Excel 시트를 편집하는 방법을 보여줍니다.
// 필요한 API 인스턴스 생성
$editApi = new GroupDocs\Editor\EditApi($configuration);
$fileApi = new GroupDocs\Editor\FileApi($configuration);

// 업로드된 XLSX 파일을 편집 가능한 상태로 로드
$fileInfo = new Model\FileInfo();
$fileInfo->setFilePath("sample.xlsx"); 

// 로드 옵션 정의
$loadOptions = new Model\SpreadsheetLoadOptions();
$loadOptions->setFileInfo($fileInfo);
$loadOptions->setOutputPath("");
$loadOptions->setWorksheetIndex(0);
$loadResult = $editApi->load(new Requests\loadRequest($loadOptions));

// HTML 문서 다운로드
$htmlFile = $fileApi->downloadFile(new Requests\downloadFileRequest($loadResult->getHtmlPath()));
$html = file_get_contents($htmlFile->getRealPath());

// 수정...
$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);

// HTML을 저장소에 다시 업로드
file_put_contents($htmlFile->getRealPath(), $html);
$uploadRequest = new Requests\uploadFileRequest($loadResult->getHtmlPath(), $htmlFile->getRealPath());
$fileApi->uploadFile($uploadRequest);

// HTML을 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));

// 완료.
echo "Document edited: " . $saveResult->getPath();
PHP에서 REST API를 사용하여 Excel 스프레드시트를 수정합니다.

PHP에서 REST API를 사용하여 Excel 스프레드시트를 수정합니다.

PHP에서 REST API를 사용하여 텍스트 파일 업데이트

앞에서 언급한 단계에 따라 텍스트 파일의 내용을 업데이트할 수도 있습니다. 그러나 업로드된 TXT 파일 경로만 제공하면 됩니다.

다음 코드 샘플은 PHP에서 REST API를 사용하여 텍스트 파일을 편집하는 방법을 보여줍니다.

// 이 코드 예제는 텍스트 파일을 편집하는 방법을 보여줍니다.
// 필요한 API 인스턴스 생성
$editApi = new GroupDocs\Editor\EditApi($configuration);
$fileApi = new GroupDocs\Editor\FileApi($configuration);

// 업로드된 TXT 파일을 편집 가능한 상태로 로드
$fileInfo = new Model\FileInfo();
$fileInfo->setFilePath("sample.txt");        
$loadOptions = new Model\TextLoadOptions();
$loadOptions->setFileInfo($fileInfo);
$loadOptions->setOutputPath("");
$loadResult = $editApi->load(new Requests\loadRequest($loadOptions));

// HTML 문서 다운로드
$htmlFile = $fileApi->downloadFile(new Requests\downloadFileRequest($loadResult->getHtmlPath()));
$html = file_get_contents($htmlFile->getRealPath());

// 텍스트 수정
$html = str_replace("Title of the document", "Welcome", $html);
$html = str_replace("Subtitle #1", "This is Subtitle", $html);

// HTML을 저장소에 다시 업로드
file_put_contents($htmlFile->getRealPath(), $html);
$uploadRequest = new Requests\uploadFileRequest($loadResult->getHtmlPath(), $htmlFile->getRealPath());
$fileApi->uploadFile($uploadRequest);

// HTML을 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));

// 완료.
echo "Document edited: " . $saveResult->getPath();
PHP에서 REST API를 사용하여 텍스트 파일을 업데이트합니다.

PHP에서 REST API를 사용하여 텍스트 파일을 업데이트합니다.

온라인 시도

위의 API를 사용하여 개발된 다음 무료 온라인 문서 편집 도구를 사용해 보십시오.

결론

이 문서에서는 다음 방법을 배웠습니다.

  • PHP에서 Word, Excel 또는 텍스트 파일의 내용을 편집하거나 수정합니다.
  • DOCX 파일을 클라우드에 업로드합니다.
  • 클라우드에서 업데이트된 Word 파일을 다운로드합니다.

그 외에도 문서를 사용하여 GroupDocs.Editor Cloud API에 대해 자세히 알아볼 수 있습니다. 또한 브라우저를 통해 직접 API를 시각화하고 상호 작용할 수 있는 API 참조 섹션을 제공합니다. 모호한 점이 있으면 언제든지 포럼에 문의해 주십시오.

또한보십시오