Php Laravel路由:如何创建指向PDF文件的链接
我需要生成PDF文档,并让他们通过电子邮件发送,以及使他们通过链接访问。 通过电子邮件发送是可以的,但我不知道如何创建链接 因为我使用了Laravel4,所以所有链接都通过Php Laravel路由:如何创建指向PDF文件的链接,php,laravel,laravel-4,Php,Laravel,Laravel 4,我需要生成PDF文档,并让他们通过电子邮件发送,以及使他们通过链接访问。 通过电子邮件发送是可以的,但我不知道如何创建链接 因为我使用了Laravel4,所以所有链接都通过routes.php。 那么,如何在给定目录中创建指向文件的链接呢 <a href="http://my.domain.org/assets/pdf/file.pdf">Link</a> 将不起作用,因为laravel不知道路径…在公共目录中的某个位置创建该PDF,然后创建指向该文件的链接,如下
routes.php
。
那么,如何在给定目录中创建指向文件的链接呢
<a href="http://my.domain.org/assets/pdf/file.pdf">Link</a>
将不起作用,因为laravel不知道路径…在公共目录中的某个位置创建该PDF,然后创建指向该文件的链接,如下所示:
URL::to('path/to/public/directory/file.pdf')
Martin Tale是对的,但这是另一种使用Laravel刀片实现同样目的的方法:
{{ link_to('/assets/pdf/file.pdf', 'Link') }}
如果您使用的是Laravel4的邮件功能,您可以将其添加到其中
$message->attach($pathToFile);
但您的公共目录中的.pdf位于pdf文件夹下,这将使它:
$message->attach('pdf/mypdffile.pdf');
这同样适用于您可以添加到电子邮件的链接
{{ URL::to('pdf/mypdffile.pdf') }}
您不需要路由来创建链接,它可以由blade完成。要生成指向物理文件或目录的链接,您不想通过Laravel的应用程序(例如,通过index.php)运行,请使用
URL::asset()
这假定您已经在服务器上创建了要链接到的物理PDF文件。如果您的PDF文件是动态的,并且是通过Laravel应用程序生成/检索的,则应使用
URL::to()
,URL::route()
,或类似方法。另一种方式,在视图中:
<a href="{{ asset('/your_pdf_file.pdf') }}">some text</a>
此链接将转到
public
文件夹。我已经为您解答了这个问题。如果您将PDF文件放在公共目录中,您可以创建直接链接,您尝试过吗?好的,这会出现“类“URL”未找到”错误-可能,因为我的test.php没有使用laravel,而是存储在laravel应用程序的公共目录中…尝试过,但我不知道为什么它会自动下载我如何在laravel-5.3中做到这一点
<a href="{{ asset('/your_pdf_file.pdf') }}">some text</a>