我正在使用 Codeigniter 库发送带有附件的电子邮件,我要附加的文件位于以下目录中
/uploads/pdf/yourfile.pdf
我将如何将其附加到其完整路径?例如,我怎样才能找到这个文件的正确路径(不是 URL)。
$this->email->attach('/path/uploads/pdf/yourfile.pdf');
我怎样才能确定什么应该替换上面一行中的“路径”
我正在使用 Codeigniter 库发送带有附件的电子邮件,我要附加的文件位于以下目录中
/uploads/pdf/yourfile.pdf
我将如何将其附加到其完整路径?例如,我怎样才能找到这个文件的正确路径(不是 URL)。
$this->email->attach('/path/uploads/pdf/yourfile.pdf');
我怎样才能确定什么应该替换上面一行中的“路径”
您可以通过__DIR__
魔术常量或dirname(__FILE__)
在旧版本的 PHP 中获得脚本运行的目录,然后从这一点确定您的路径。然后,您可以使用realpath()
已解析的文件路径。例如:
$path_to_the_file = realpath(__DIR__.'/../uploads/pdf/yourfile.pdf/');
首先尝试echo __DIR__
找到您当前的位置,然后添加从您当前位置到的相对路径__DIR__
并将其提供给realpath()
同样在 Codeigniter 中,常量 APPPATH 指向应用程序文件夹,所以这是另一种解决方案:
$path_to_the_file = realpath(APPPATH.'relative/path/to/the/file/from/application/folder');
设法使用 CodeIgniters 功能来执行以下操作..
$path = set_realpath('uploads/pdf/');
$this->email->attach($path . 'yourfile.pdf');
希望这对其他人有帮助。再次感谢
注意:不要忘记之前加载路径助手,否则set_realpath()
将不存在。