插入图片 PhpWord
Insert Image PhpWord
我可以使用 URL 添加图像,但不能尝试获取本地图像文件。
$portada->addImage('earth.jpg');
出现此错误:
Uncaught PHP Exception PhpOffice\PhpWord\Exception\InvalidImageException: "" at C:\Users\kaskull\Desktop\symfony\examsgenerator\vendor\phpoffice\phpword\src\PhpWord\Element\Image.php line 386
我正在控制器上创建我的 Word,所以我的第一个想法应该是这样的:
$portada->addImage('../Resources/Asset/images/logo.png');
出现同样的错误。
编辑:
如果我这样做:
$path = realpath('../Resources/Asset/images/logo.png');var_dump(is_readable($path));
它returns假
但是如果我使用它,它就会运行。
$path=realpath('C:\Users\CARLES\Desktop\symfony\examsfinal\src\AppBundle\Resources\Asset\images\logo.png');
假设您有以下文件夹结构:
C:\Users\kaskull\Desktop\symfony\examsgenerator\src\AppBundle\Controllers\MyController.php
C:\Users\kaskull\Desktop\symfony\examsgenerator\src\AppBundle\Resources\Asset\images\logo.png
更新:
在你的控制器中试试这个:
$path = realpath(__DIR__ . '/../Resources/Asset/images/logo.png');
$portada->addImage($path);
__DIR__
in PHP 是文件(documentation link)的目录。您需要它,因为您的控制器 class 是从其他文件上下文执行的。这就是为什么你的相对路径不起作用。
我可以使用 URL 添加图像,但不能尝试获取本地图像文件。
$portada->addImage('earth.jpg');
出现此错误:
Uncaught PHP Exception PhpOffice\PhpWord\Exception\InvalidImageException: "" at C:\Users\kaskull\Desktop\symfony\examsgenerator\vendor\phpoffice\phpword\src\PhpWord\Element\Image.php line 386
我正在控制器上创建我的 Word,所以我的第一个想法应该是这样的:
$portada->addImage('../Resources/Asset/images/logo.png');
出现同样的错误。
编辑:
如果我这样做:
$path = realpath('../Resources/Asset/images/logo.png');var_dump(is_readable($path));
它returns假
但是如果我使用它,它就会运行。
$path=realpath('C:\Users\CARLES\Desktop\symfony\examsfinal\src\AppBundle\Resources\Asset\images\logo.png');
假设您有以下文件夹结构:
C:\Users\kaskull\Desktop\symfony\examsgenerator\src\AppBundle\Controllers\MyController.php
C:\Users\kaskull\Desktop\symfony\examsgenerator\src\AppBundle\Resources\Asset\images\logo.png
更新:
在你的控制器中试试这个:
$path = realpath(__DIR__ . '/../Resources/Asset/images/logo.png');
$portada->addImage($path);
__DIR__
in PHP 是文件(documentation link)的目录。您需要它,因为您的控制器 class 是从其他文件上下文执行的。这就是为什么你的相对路径不起作用。