2017-06-13 57 views
0

我想与图片发送电子邮件,并且图像有必须的完整路径, 一样,http://www.example.com/img/image-name.jpg 所以,我使用CakePHP 3框架,代码:如何在cakephp 3.1中获得完整的图像相对路径?

$this->Html->image('image.jpg', ['fullBase' => true]);

错误accurs:Path is not found

我觉得webroot总是可以工作的:<img src="<?php echo $this->webroot; ?>img/image-name.jpg">但是这不是正确的方法。

请用实例说明正确的方法。

谢谢 Mak。

+1

您_think_使用'webroot'的作品?你真的尝试过了吗?此外,错误发生在哪里,它不会像CakePHP错误那样读取?并且'image()'调用返回的是_exactly_? – ndm

+1

我想使用fullpath进行图像处理,所以来自其他服务器的电子邮件可以读取图像,我已经尝试使用上面提到的代码,但是代码不会生成整个页面:' ,你有什么想法我如何管理电子邮件? –

+0

我有点感觉到,但是你没有回答我的任何问题。 – ndm

回答

1

对于电子邮件发送,您必须对图像的完整路径,

`echo $this->Html->image("recipes/6.jpg", [ 
    "alt" => "Brownies", 
    'url' => ['controller' => 'Recipes', 'action' => 'view', 6] 
]);` 

将输出:

`<a href="/recipes/view/6"> 
    <img src="/img/recipes/6.jpg" alt="Brownies" /> 
</a>` 

但是,你必须使用,

echo $this->Html->image("logo.png", ['fullBase' => true]);

将输出:

<img src="http://example.com/img/logo.jpg" alt="" />

https://book.cakephp.org/3.0/en/views/helpers/html.html#linking-to-images

这是建议的CakePHP的框架之有道。

+1

谢谢你的回答。是的,它为我工作。 –