php
2012-03-31 46 views -1 likes 
-1

我已經包含從表單數據,陣列的變量如下所示:file_put_contents寫入包括到新的文件

$option1 = explode("\n", $_POST['form1']); 

我然後寫入陣列到另一文件:

$test = array($option1); 
$file = 'test.php'; 
file_put_contents($file, '<?php \n\n $array=' . var_export($test, true) . ';' . '\n'); 

我想在上面的test.php文件中寫入/包含一個文件或大量代碼來操作$數組。當嘗試下面的代碼,它只是打印包含文件的內容到當前頁面,而不是寫它:

file_put_contents($file, include('includefile.php')); 
+1

我可以問你的最終目標是什麼?在我看來,這裏發生了非常非常錯誤的事情。 – Corbin 2012-03-31 09:48:53

+0

同意@Corbin - 請分享您的使用案例。你有可能造成嚴重的安全漏洞。 – halfer 2012-03-31 18:00:39

回答

0

如果我深知,你想包括includefile.php代碼到您的test.php?

您不能使用包含這樣的,但你應該那樣做。

file_put_contents($file, file_get_contents('includefile.php'), FILE_APPEND); 

這將從includefile.php內容添加到您的test.php

+0

+1的工作答案。在評論和其他答案中,安全問題非常明顯 - 希望OP會迴應他們! – halfer 2012-03-31 11:05:07

1

不能確定你的目的,但對於執行動態生成的代碼是不是在安全的長期一個好主意。如果在寫入陣列時出現異常,會發生什麼。 您試圖執行的腳本將是未知的。

我會recommmed你認爲outputing數組中的字符串鏈接JSON或初始化 裏面的文件的。然後重新加載它,當你需要隨着你的陣列操縱國「includefile.php」使用json_decode或parse_ini ...

相關問題