【发布时间】:2015-10-05 04:59:18
【问题描述】:
我有一个文本文件,我存储所有数据,如下所示:
dept|test-1|365|0
dept|test-2|134|0
expense|test-3|4387|0
expense|test-4|105|0
如何获得该类别中所有交易的每个类别的总和?
在本例中,dept 类别的总和为 499,expense 类别的总和为 4'492。
但是我如何在 PHP 中做到这一点?
这是我当前的代码:
function do_maths($expression) {
eval('$o = ' . preg_replace('/[^0-9\+\-\*\/\(\)\.]/', '', $expression) . ';');
return $o;
}
function inifile($fname, $word) {
$contents = file_get_contents($fname.'.ini');
$pattern = preg_quote($word, '/');
$pattern = "/^.*$pattern.*\$/m";
if(preg_match_all($pattern, $contents, $matches)) {
sort($matches[0]);
# TABELL
echo '<div class="table">';
# LOOP
foreach($matches[0] AS $found) {
$transaction = explode('|', $found);
echo '<div class="table-row'.($transaction[3] == 1 ? ' color-grey-light" title="'.$transaction[1].' är betalad"' : '"').'>';
echo '<div class="table-cell-left table-cell-left-width">';
echo $transaction[1];
echo '</div>';
echo '<div class="table-cell-right">';
echo '<span class="sum">';
echo do_maths($transaction[2]);
echo '</span> kr';
echo '</div>';
echo '</div>';
}
echo '</div>';
} else {
echo '<div class="message color-blue">';
echo 'Kunde inte hitta något';
echo '</div>';
}
}
【问题讨论】:
-
你试过了吗?
-
您有当前正在打开/读取文本文件的代码吗?
-
我已经在我的问题中添加了整个代码 :) 很抱歉造成混淆。我想我累了 -.- 现在这里的时钟是 00:47
标签: php file text sum file-get-contents