簡體   English   中英

在PHP中包含一個PHP文件

[英]Including a PHP file within PHP

我有一個運行PHP if語句的網站,該語句根據附加的文件類型(例如Jpg,Txt,MP4)顯示內容。

所以我顯示TXT文件的代碼是:

if($post_attachment == 'txt'){$display_attachment = "

        <div class=\"sectionDivide\"></div>
        <div class=\"section\">
            <div class=\"articleAttachment\">
                include(\"../a/files/attachments/$post_year/$post_month/$post_id.$post_attachment\");
            </div>
        </div>

    ";}

問題在於它沒有顯示TXT文件的內容,而是顯示了include("../a/files/attachments/2016/11/161123095119.txt"); 在我的網頁上。

如何獲取顯示$display_attachment的文本文件的內容?

直接(粗略)的方法是使用php的字符串串聯運算符( . ):

$display_attachment = sprintf('
        <div class="sectionDivide"></div>
        <div class="section">
            <div class="articleAttachment">' . 
    include("/some/path/to/file") . '
            </div>
        </div>
');

sprintf()的使用雖然不太真正,但仍不太易讀,雖然比較混亂,但它卻是:

$display_attachment = sprintf('
        <div class="sectionDivide"></div>
        <div class="section">
            <div class="articleAttachment">
%s
            </div>
        </div>
',
    include("/some/path/to/file")
);

一個干凈的解決方案將獲取包含在字符串變量中的結果並使用它。

顯示文件的內容include()是錯誤的函數。 include()將加載並執行php代碼。

您應該嘗試使用fread()來獲取TXT文件的內容: http : //php.net/manual/en/function.fread.php

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM