aywars Posted September 13, 2012 Report Posted September 13, 2012 Ir masīvs, piemēram, tāds: [631] => 1 [903] => 2 [1051] => 1 Kā vislabāk samazināt key (903) value vērtību par 1 vienību (no 2 uz 1)? Quote
aywars Posted September 13, 2012 Author Report Posted September 13, 2012 ?? Masīvs satur vērtību pārus "preces_id=>skaits". Es gribu samazināt skaitu konkrētam preces_id par vienu vienību. Quote
daGrevis Posted September 13, 2012 Report Posted September 13, 2012 `$the_array[$the_id] = $the_array[$the_id] -1;` ...vai: `$the_array[$the_id] -= 1;` ...vai: `--$the_array[$the_id];` Quote
rpr Posted September 13, 2012 Report Posted September 13, 2012 varbūt labāk ar array_walk() ? :) Quote
v3rb0 Posted September 13, 2012 Report Posted September 13, 2012 (edited) varbūt ar klasi class SuperSamazinatajs2000 { public function execute(&$v) { $v--; } } $a = array(631 => 1, 903 => 2, 1051 => 1); $ss2k = new SuperSamazinatajs2000(); $ss2k->execute($a[903]); :> Edited September 13, 2012 by v3rb0 Quote
daGrevis Posted September 13, 2012 Report Posted September 13, 2012 > varbūt labāk ar array_walk() ? :) Galīgi nē. Quote
codez Posted September 13, 2012 Report Posted September 13, 2012 (edited) Es nedaudz ulaboju v3rb0 klasi - pievienoju, ka var samazināt par jebkādu vērtību un, ja jau reiz lietojam latviešu valodu, tad strikti visos nosaukumos. http://codepad.org/gmcSxtoA class SuperSamazinātājaLoceklis{ function __construct($daudzums){ $this->vērtība=$daudzums; } function iegūt(){ return $this->vērtība; } } class SuperSamazinātājs2012 { function __construct($loceklis){ $this->loceklis=$loceklis; } public function izpildītSamazināšanu(&$v) { $v=$v-$this->loceklis->iegūt(); } } class Drukātājs{ function drukāt($saturs){ echo $saturs; } } class PēcSamazinšanasDrukātājs extends Drukātājs{ function drukāt($ko){ echo parent::drukāt("Pēc Samazināšanas vērtība ir ".$ko); } } $a = array(631 => 1, 903 => 2, 1051 => 1); $samazinātājs = new SuperSamazinātājs2012 (new SuperSamazinātājaLoceklis(5)); $samazinātājs->izpildītSamazināšanu($a[903]); $drukātājs = new PēcSamazinšanasDrukātājs(); $drukātājs->drukāt($a[903]); Edited September 13, 2012 by codez Quote
Val Posted September 13, 2012 Report Posted September 13, 2012 iekš PēcSamazinšanasDrukātājs klases nosaukuma trūkst viens "ā" Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.