Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/laravel/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Laravel路由:如何创建指向PDF文件的链接_Php_Laravel_Laravel 4 - Fatal编程技术网

Php Laravel路由:如何创建指向PDF文件的链接

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,然后创建指向该文件的链接,如下

我需要生成PDF文档,并让他们通过电子邮件发送,以及使他们通过链接访问。 通过电子邮件发送是可以的,但我不知道如何创建链接

因为我使用了Laravel4,所以所有链接都通过
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>