Jump to content
php.lv forumi

Recommended Posts

Posted

Ir masīvs

$aa=array("lampa","galds","krēsls");

 

Kā samainīt vietām masīva elementus. Jāiegūst šitāds masīvs:

$aa=array("galds","krēsls","lampa");

Posted

vecā labā manuālā metode:

 

$aa=array("lampa","galds","krēsls");
$c=$aa[0];
$aa[0]=$aa[1];
$aa[1]=$aa[2];
$aa[2]=$c;

$aa=array("galds","krēsls","lampa");

tb jebkuram masīvam:
$sk=count($aa);
$c=$aa[0]; 
for ($i=0; $i<$sk; $i++) {
$aa[$i]=$aa[$i+1];
}
$aa[$sk]=$c;

Posted

hu_ha, nestrādās! ;)

ciklam viena iterācija par daudz būs, tb viņs pēdējam elementam mēģinās piešķirt pēdējo+1 elementu.

Posted

Kas ta šitā par ideju? Tas tak elementārs paņēmiens, es vispār nesaprotu, kā var šito (ar masīva elementu pārbīdīšanu) pats neidomāt. Es bij domājis, ka cilvēks to grib advancēti uzrakstīt ;)

Posted

2bubu

 

tas array_push() nobiida pirmo elementu uz beigaam, bet man vajag arii iespeeju vinju paarbiidiit uz citu vietu, ja arii masiivaa buus 20 ieraksti, lai vareetu paarbiidiit gan pirmo elementu aiz piektaa, astotaa utt., gan ceturto elementu uz otro, desmito vietu utt.

Posted
2bubu

 

tas array_push() nobiida pirmo elementu uz beigaam, bet man vajag arii iespeeju vinju paarbiidiit uz citu vietu, ja arii masiivaa buus 20 ieraksti, lai vareetu paarbiidiit gan pirmo elementu aiz piektaa, astotaa utt., gan ceturto elementu uz otro, desmito vietu utt.

Tad tā arī vajag izteikties uzreiz! A to pēc tā 3-elementu masīva piemēra vienīgais, ko varēja saprast bija, ka gribi pirmo elementu aizlikt aiz pēdējā.

Ja gribi, lai jebkuru elementu var aizlikt aiz jebkura, tad vai nu jādarbojās ar array_slice, vai arī ar hu_ha ieteikto metodi, t.b. pašam ciklā visu pārbīdīt kā vajag.

×
×
  • Create New...