2016-12-23 162 views
-2

我寫了一個腳本來從一個字符串這樣除去R $美元符號功能:刪除不工作

$money ="R$ 100,00"; 
$charactersToBeRemoved = array("R", "$", " "); 
$changedValue = str_replace($charactersToBeRemoved, "", $money); 

此腳本適用於主腳本罰款,但如果我創建了一個功能,因爲它喜歡:

function removeDollar($x) {  
     $charactersToBeRemoved = array("R", "$", " "); 
     $changedValue = str_replace($charactersToBeRemoved, "", $x); 
     return $changedValue;  
    }  

    $money = "R$100,00";   
    $newValue = removeDollar($money); 
    echo $newValue; 

$newValue仍顯示R $ 100,00。

注:

此功能是在functions.php文件創建其中已經包含由包括在主腳本功能。

我真的不知道我在做什麼錯。這樣

​​

+1

檢查上面的代碼似乎是工作? https://3v4l.org/JiCMT – Tolios

+1

*「主腳本中包含的函數已包含在哪裏。」* - 如果文件包含在某處,則可能有變量範圍問題 –

回答

0

工作正常,您可以在此PHP Sandbox example

檢查上面的代碼,並能正常工作像這樣(在你的例子)

function removeDollar($x) { 
     $charactersToBeRemoved = array("R", "$", " "); 
     $changedValue = str_replace($charactersToBeRemoved, "", $x); 
     return $changedValue; 
    } 

    $money = "R$100,00"; 
    $newValue = removeDollar($money); 
    echo $newValue; 
    // output 100,00 

您可以檢查以上代碼PHP Sandbox example

and in c萬一你需要檢查所有的字符串中的字符

function removeDollar($x) { 
    $charArray = str_split($x); 
    $returnArray = array(); 
    foreach($charArray as $char){ 
    if($char!=="R" && $char!=="$" && $char!==" ") { 
     array_push($returnArray,$char); 
    } 
    } 
    $money = implode("",$returnArray); 
    return $money; 
    } 

    $money = "R$100,00"; 
    $newValue = removeDollar($money); 
    echo $newValue; 

您可以在此PHP Sandbox example

+0

第一個代碼適用於我。我仍然不知道我在做什麼錯了我的代碼,買你的工作!謝謝! –

+0

@FilipeMarques如果你檢查所有的沙箱鏈接,你會看到所有的代碼示例工作。但由於其他方式解決你的問題,然後......乾杯:) –