Rumah > php教程 > PHP源码 > teks badan

AA制分账

PHP中文网
Lepaskan: 2016-05-25 17:09:07
asal
1222 orang telah melayarinya

php代码

<?php
header(&#39;content-type: text/html; charset=utf-8&#39;);
/**
 * AA账目
 * @author heping1
 */
class account{
	public $accounts;
	public $income;
	public $pay; 
	public $desc;
	function __construct($accounts)
	{
		foreach($accounts as $k=>$v)
    	{
    		if($v > 0)
    		{
    			$arr_income[$k] = $v;
    		}elseif($v < 0)
    		{
    			$arr_pay[$k] = $v;
    		}
    	}
    	arsort($arr_income);
		asort($arr_pay);
		$this->income = $arr_income;
		$this->pay = $arr_pay;
	}
    function AA()
    {
    	foreach($this->income as $k=>&$v)
    	{
    		foreach($this->pay as $k1=>&$v1)
    		{
    			if($v + $v1 > 0)
    			{
    				$this->desc[] = $k.&#39;给&#39;.$k1.($v1 * -1).&#39;元&#39;;
    				$this->income[$k] = $v + $v1;
    				unset($this->pay[$k1]);
    				$this->AA();
    			}else
    			{
    				$this->desc[] = $k.&#39;给&#39;.$k1.$v.&#39;元&#39;;
    				$this->pay[$k1] = $v + $v1;
    				unset($this->income[$k]);
    				$this->AA();
    			}
    		}
    	}
    }
}
$accounts = array(
	&#39;A&#39;=>50, // A总共需要支付的金额为50
	&#39;B&#39;=>40,
	&#39;C&#39;=>10,
	&#39;D&#39;=>-20, // D需要收取的金券为20
	&#39;E&#39;=>-30,
	&#39;F&#39;=>-20,
	&#39;G&#39;=>-30,
	&#39;H&#39;=>0
);
$account = new account($accounts);
$account->AA();
print_r($account->desc);
// output :
// Array ( [0] => A给G30元 [1] => A给E20元 [2] => B给E10元 [3] => B给D20元 [4] => B给F10元 [5] => C给F10元)
Salin selepas log masuk
Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Cadangan popular
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!