0

我正在尝试将平面文本文件加载到控制器中。我知道我需要使用 Loader 函数来执行此操作(并将第二个参数设置true为获取字符串),但无论我使用什么路径,Loader 都找不到文件。顶部在哪里file_path

$this->load->file('../application/views/textiles/about.txt',true);

很高兴知道我如何将此加载的字符串设置为要传递给视图的变量。

更新

我应该补充一点,我刚刚找到了一些与乔丹的解决方案同样有效的方法来解决我正在尝试做的事情。文本文件是用 Markdown 编写的,因此要将其转换为视图,您还可以执行以下操作(不必担心文件路径):

$this->load->helper('markdown');
$string = $this->load->view('text.txt', '', true);
$string = markdown($string);
$data['text'] = $string;
$this->load->view('template', $data);
4

2 回答 2

0

顶部file_path位于您的文档根目录中。如果您需要在application/viewswrite 中访问文件:

$path = APPPATH . "views/textiles/about.txt";
$data['file_contents'] = $this->load->file($path, true);
$this->load->view('your_view', $data);

最好APPPATH按所示使用,以防您决定更改目录结构并将其重新路由到index.php. 请注意,如果您使用的是 *NIX 机器,则需要为此目录/文件授予适当的权限。

然后在您看来,您只需使用$file_contents.

于 2012-10-02T22:08:12.980 回答
0
    $this->load->file('application/views/textiles/about.txt',true);

摆脱文件位置开头的 ../ 。请参阅有关此的 codeigniter 文档。

于 2012-10-02T22:01:57.877 回答