2017-07-19 40 views
-1

有没有办法使用if/else代码多次不同的变量?这只是一个例子,因为我不知道如何搜索它或者它是否存在?有人能指引我朝着正确的方向吗?php函数多次使用

function value(){ 
if ($value > 999 && $value <= 999999) { 
    $value = number_format($value/1000,1) . 'K'; 
    } elseif ($value > 999999) { 
    $value = number_format($value/1000000,1) . 'mln'; 
    } else { 
    $value; 
    } 
} 

    value($variable1); 
    value($variable2); 
    value($variable3); 
+0

腓的任务 –

+1

,这种功能的工作,你希望提供切换功能? –

+2

您需要在函数声明中定义一个调用参数。这是功能的全部要点。 – arkascha

回答

3

您需要在函数声明中定义一个调用参数(参数)。这是函数的整点:

<?php 
function formatValue($value){ 
if ($value > 999 && $value <= 999999) { 
    return number_format($value/1000,1) . 'K'; 
    } elseif ($value > 999999) { 
    return number_format($value/1000000,1) . 'mln'; 
    } else { 
    return $value; 
    } 
} 

$someValue = 8888; 
var_dump(formatValue($someValue)); 
var_dump(formatValue(555555555)); 
var_dump(formatValue((2*$someValue)+1000000)); 
var_dump(formatValue(-200)); 

以上代码的输出是:

string(4) "8.9K" 
string(8) "555.6mln" 
string(6) "1.0mln" 
int(-200) 
+0

谢谢!它工作正常! – Damenace

0

value函数必须带一个参数($ value)。

你的功能应该是

function value(&$value){ 
     if ($value > 999 && $value <= 999999) { 
      $value = number_format($value/1000,1) . 'K'; 
     } elseif ($value > 999999) { 
      $value = number_format($value/1000000,1) . 'mln'; 
     } else { 
      $value; 
     } 
} 

你要通过$值作为参考,因为你分配的东西给它,你想要得到它的功能外。

您也可以返回number_format($ value/1000,1)。 'K';而不是将其分配给$ value。