2012-09-09 42 views
1

我有我可以創建類別的管理面板。當我創建類別我自動創建文件夾htdocs ...例如...類別/第一,類別/第二等把php命令放在php字符串中

而我想要做的是,當我創建這些文件夾時,我自動創建索引.php與我需要的代碼...第一個變種是使用文件功能...但是,我怎麼把字符串PHP命令? 秒..我猜對了,是創建這個模板..當我創建這些文件夾,它複製到我創建的目錄...

那麼你怎麼想?

編輯... 但我需要存儲此代碼變量當前類別打開。

+0

去模板 – Kuro

+0

編輯...但我需要存儲在此代碼變量與當前類別打開。 –

回答

1

一種解決方案是編寫代碼那樣:

// Creates a template of category 
$page = <<< EOT 

<html> 
    <head> 
     <title>Category {$category_name}</title> 
     (...) 

    </body> 
</html> 
EOT; 

$f = fopen($new_directory . "/index.php", 'w'); 
fwrite($f, $page); 
fclose($f); 

Remeber把EOT;在文檔的最左邊。詳細信息請參見heredoc syntax

此代碼是一個示例,您當然需要檢查fopen/fwrite是否成功。

另一種解決方案可能是在另一個帶有模板標記的文件中創建一個模板。

在這種方式,你將有一個文件中命名template_category.txt其中包含:

<html> 
    <head> 
     <title>Category %category_name%</title> 
     (...) 

    </body> 
</html> 

然後,在你的PHP腳本,你會做你的值替換模板標記:

$template = file_get_contents("template_category.txt"); 

$to_replace = array(
    '%category_name%', 
    (...) 
); 

$replace_by = array(
    $category_name, 
    (...) 
); 

$page = str_replace($to_replace, $replace_by, $template); 

然後你像上面一樣在index.php上寫$ page。

+0

,但我可以寫在那裏echo/str_replace()...這些命令我的意思是? –

0

嘗試使用PHP的HTML的和代碼的模板文件,並與一些標記指定有需要的增值經銷商,如:

in template.php 
<?php 
$category_id = #TOKEN_CATEGORY_ID#; 
... 
?> 

然後將該文件複製到新的類別的文件夾,並在#TOKEN_CATEGORY_ID做的preg_replace() #。