0

在我的数据库中有一个表有一些像这样的值[字符串]

100/100
50/100
40/80
7/70

我需要更改此值

100%
50%
50%
10%

我怎样才能只使用 PHP/mysql 代码来做到这一点?

编辑:这是代码:

foreach ($html->find('div.stat') as $status_raw){
    $status = $tag_pic_raw->src;
    $status = mysql_real_escape_string($status);
    $data->query("INSERT IGNORE INTO `tb` (`value`) VALUES ('".$status."')");
}

我使用 DOM 检查器从另一个站点获取信息

4

4 回答 4

4

explode()与一些数学结合使用。

$str = '40/80';
$vals = explode('/', $str);
$percent = (($vals[0] / $vals[1]) * 100).'%';
echo $percent;
于 2013-09-11T15:45:40.427 回答
2

用于explode()划分值,然后对其进行数学运算。

foreach($array as $val) // assuming all the (##/##) values are in an array
{
    $mathProblem = explode("/", $val);
    echo (intval($mathProblem[0]) / intval($mathProblem[1]) * 100)."%<br />";
}
于 2013-09-11T15:45:28.623 回答
0

使用explode() :返回一个字符串数组,每个字符串都是通过在由字符串分隔符(/在本例中)形成的边界上拆分它而形成的字符串的子字符串。

$arr=array('80/100','50/100','40/80');
foreach($arr as $str){
 $values = explode('/',$str);
 echo ((int)$values[0]/(int)$values[1])*100.'%<br/>';
}
于 2013-09-11T15:48:14.323 回答
0

您可以设置类似这样的功能:

function math($one)
    {
        $new = explode("/", $one);
        $math = $new[0] / $new[1];
        $answer = $math * 100;
        return $answer."%";
    }

然后每次你需要查询一些东西时,你可以简单地这样做:

foreach ($results as $r)
{
    echo math($r);
}

这只是让它(我认为)更整洁,更容易阅读。

于 2013-09-11T15:50:54.977 回答