运行Google DocumentAI PHP示例代码时遇类未找到错误
解决PHP中
Google\Cloud\DocumentAI\V1\DocumentProcessorServiceClient类找不到的错误 出现这个错误的核心原因是类文件未被正确加载,下面是分步解决方法:
1. 修复代码中的语法错误
你的代码里require_once 'vendor/autoload.php'这一行末尾缺少分号,这会导致PHP解析中断,autoloader无法正常加载后续的类。修正后应该是:
require_once 'vendor/autoload.php';
2. 确认Google Cloud DocumentAI依赖已正确安装
确保你已经通过Composer安装了官方的DocumentAI客户端库:
在项目根目录执行以下命令:
composer require google/cloud-document-ai
执行完成后,检查项目根目录是否生成了vendor文件夹,且里面包含Google/Cloud/DocumentAI相关目录。
3. 验证Autoloader路径正确性
如果你的index.php不在项目根目录(比如放在子文件夹里),需要调整require_once的路径,比如:
require_once __DIR__ . '/../vendor/autoload.php';
确保路径指向正确的autoload.php文件。
4. 修正后的完整代码
<?php // auth $authpath = "Authfile.json"; putenv("GOOGLE_APPLICATION_CREDENTIALS=$authpath"); // load libraries require_once 'vendor/autoload.php'; // Imports the Google Cloud client library use Google\Cloud\DocumentAI\V1\DocumentProcessorServiceClient; use Google\Cloud\DocumentAI\V1\RawDocument; $projectId = 'myprojectid'; // Your Google Cloud Platform project ID $location = 'us'; // Your Processor Location $processor = 'c......1'; // Your Processor ID // Create Client $client = new DocumentProcessorServiceClient(); // Local File Path $documentPath = 'Winnie_the_Pooh_3_Pages-1.pdf'; // Read in File Contents $handle = fopen($documentPath, 'rb'); $contents = fread($handle, filesize($documentPath)); fclose($handle); // Load File Contents into RawDocument $rawDocument = new RawDocument([ 'content' => $contents, 'mime_type' => 'application/pdf' ]); // Fully-qualified Processor Name $name = $client->processorName($projectId, $location, $processor); // Make Processing Request $response = $client->processDocument($name, [ 'rawDocument' => $rawDocument ]); // Print Document Text printf('Document Text: %s', $response->getDocument()->getText()); ?>
内容的提问来源于stack exchange,提问作者Kit Ramos
相关产品推荐
相关产品推荐

