2013-03-17 131 views
0

我有了下面的代碼一個文件名爲paths.php:功能和包括

<?php 

$path_1="db"; 
$path_2="files"; 

?> 

此文件是包含在其他文件中,例如index.php文件和下面的包括:include("paths.php");

在index.php文件,在那裏我得到這個包括,我也有以下功能:

<?php 
function explode($value,$separator) 
{ 
    /// Into I need take value $path_1 /// 
    $exp=explode("$separator","$value"); 
    for ($i=0;$i<count($exp);$i++) 
    { 
     print "".$exp[$i].""; 
    } 
} 
?> 

的問題是,我需要讀的值($值)從包括INSI功能範圍。我在函數中遇到問題,包含必須在函數中才能工作。

函數是否可能取這些值而不需要包含在函數內部,因爲如果我不把它放在裏面,它不會取正確的值?

回答

1

我很難理解你的意思。但是,我在你的代碼注意到一些問題:

function explode($value,$separator) 
{ 

explode()是一個內置的PHP函數。你不能重新聲明它。您需要爲您的功能使用不同的功能名稱。

如果您希望從您創建的函數中訪問$path_1$path_2,則需要使用global。例如:

function custom_explode($value,$separator) { 
    global $path_1, $path_2; 
    // your other codes 
    echo 'I can now access $path_1: '.$path_1.' and $path_2: '.$path_2.'!'; 
}