<?php

$taksit = array();
$taksit[] = array("taksit"=>"11","tutar"=>"1100");
$taksit[] = array("taksit"=>"5","tutar"=>"500");
$taksit[] = array("taksit"=>"8","tutar"=>"800");

// Taksit sayısı küçükten büyüğe oalcak şekilde diziyi sıralıyoruz
usort($taksit, function($a, $b) {
    return $a['taksit'] - $b['taksit'];
});

$aylikTutar = 0;
$ay = 1;

// Dizinin üstünde değişiklik yapacağımız için başka bir değişken kullanıyoruz.
// Orjinal değişken belki lazım olur sonra
$taksitKopya = $taksit;

// En büyük taksit sayısını alıyoruz.
// Bu örnekte $son = 11 oluyor yani
$son = end(array_values($taksit));
$son = intval($son['taksit']);

// En büyük taksit sayısı kadar bir döngü
while($son > 0) {
        // Her ürün için
	foreach($taksitKopya AS &$t) {
                // Eğer taksit bitmişse bunu geçiyoruz
		if($t['taksit'] == "0") {
			continue;
		}
		
		$aylikTutar += 100;
		
		$t['taksit']--;
	}
	
	echo "$ay. ay: $aylikTutar\n";
	
	$ay++;
	$son--;
	$aylikTutar = 0;
}
Aylık taksiti direk 100 diye yazdım. Sen onu hesaplayıp bir değişkene atıp öyle kullanırsın.