下與對象和整數多維數組我不得不計數未命中項的總數中,兩個對象用PHP,這是在下面的類定義之間:處理PHP
<?php
class Module {
var $nD;
var $nC;
var $nA;
function __construct($nD, $nC, $nA) {
$this->nD = $nD;
$this->nC = $nC;
$this->nA = $nA;
}
function toString() {
return $this->nD . "-" . $this->nC . "-" . $this->nA . "<br>";
}
}
?>
有一些固定的模,這有以下幾種:
$mods = array (
'mod1' => new module (4, 3, 3),
'mod2' => new module (5, 3, 2),
'mod3' => new module (4, 4, 2),
'mod4' => new module (5, 4, 1),
'mod5' => new module (4, 5, 1),
'mod6' => new module (3, 5, 2),
'mod7' => new module (3, 4, 3)
);
因此,例如,作爲輸入,我鍵入以下模塊(2,4,3),並且總的差異的結果,爲MOD1的情況下將是: 4-2 = 2,3-4 = -1→0(只是正值),3-3 = 0所以總數2 + 0 + 0 = 2mod2的將是: 5-2 = 3,3-4 = -1 - > 0(只是應該加上正值),2-3 = -1 - >(只是正值)所以總數3
這是代碼,計算出的差異值:
<?php
include 'module.php';
function getmodules($id = null) {
$mods = array (
'mod1' => new module (4, 3, 3),
'mod2' => new module (5, 3, 2),
'mod3' => new module (4, 4, 2),
'mod4' => new module (5, 4, 1),
'mod5' => new module (4, 5, 1),
'mod6' => new module (3, 5, 2),
'mod7' => new module (3, 4, 3)
);
if (null !== $id) {
return isset ($mods [$id]) ? $mods [$id] : false;
} else {
return $mods;
}
}
$module = new Module (2, 3, 4);
$array = array();
for($i = 1; $i <= 7; $i ++) {
$par = getmodules ('mod' . $i);
$num = 0;
if ($par->nD > $module->nD) {
$num += $par->nD - $module->nD;
}
if ($par->nC > $module->nC) {
$num += $par->nC - $module->nC;
}
if ($par->nA > $module->nA) {
$num += $par->nA - $module->nA;
}
}
?>
所以我想要的東西,是有一個排序的HashMap的,以作爲鍵值例如模塊(新模塊(4, 4,2))和作爲$ num變量的值。 另外,作爲下一步,我想用$月的月牙值來訂購HashMap。 所以輸出將是這樣的:
$ output = array()[對象Module mod1 => $ num mod1,對象Module mod2,$ num of mod2];
我希望問題很清楚。如有疑問,請詢問。
我,似乎明白一切的一切,直到 '作爲下一步' 並沒有什麼後:) – splash58