2016-12-23 244 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如果你检查所有的沙箱链接,你会看到所有的代码示例工作。但由于其他方式解决你的问题,然后......干杯:) –