Navigacija

Vartotojų tinkle

Prisijungusių svečių: 762
Prisijungusių narių: 0
Prisijungusių narių nėra

Registruoti nariai: 25,956
Naujausias narys: saulyzas

Naujausi straipsniai

Paskutiniai nariai

saulyzas 5 dienos
MaFetas 1 savaitė
TOMIJUS 2 savaitės
ozzWANTED 2 savaitės
Reikalas10 savaitės
Jaunelis17 savaitės
lanis17 savaitės
And2s18 savaitės
Memento Mori23 savaitės
Quwqkibor25 savaitės
asirija29 savaitės
tomeem31 savaitės
weberiz34 savaitės
mRokass37 savaitės
kartoonas38 savaitės
grunskiz41 savaitės
Bruksnys41 savaitės
illusion41 savaitės
ordo42 savaitės
Jurgaila43 savaitės

Informacija:


OS: Unknown
Naršyklė: Nežinoma
IP: 3.137.178.122
Naujienų: 529
Straipsnių: 235
Temų: 52,588
Postų: 522,537
Postų pask. parą: 0
Shout'ų pask. parą: 0
P.S.C. pask. parą: 0
Nuorodų kataloge: 13

Lankomumo Statistika

Peržiūrų šiandien: 22

Iš viso peržiūrų: 22948724

Prisijungti

REGISTRUOTIS
Nario vardas

Slaptažodis



Pamiršai slaptažodį?
Paprašyk naujo

Aktyvuoti save

Šaukykla

Jei norite rašyti žinutes, turite prisijungti.

MaFetas
2024 Lap. 13 22:11:57
hey how, geras dar veikiantis saitas?

Jaunelis
2024 Lie. 25 11:07:43
Oho vis dar veikia svetainė akinanti šypsen Šimtas metų, matau Šaukykloje nuostalgija. Smagu panaršyt po forumą ir pažiūrėt senas temas šypsosi

And2s
2024 Lie. 17 19:07:04
2008 pirmą kart čia patekau, man buvo 10m ir čia pramokau programavimo.. smagu skaityti senas žinutes, tokia nostalgija akinanti šypsen ačiū Ozz kad saugoji šitą kultūrinį reliktą šypsosi

ozzWANTED
2024 Sau. 17 01:01:00
Desperatiškus komentarus šaukykloje su accountu po mėnesio prasibuvimo, ištryniau. Pasaulis ir taip juodas. Įjungiam šviesą, prašviesės. šypsosi

Majakas
2023 Gru. 10 19:12:39
Negaliu patikėti jog žinutės/pranešimai visi yra nuo 2008 m akinanti šypsen

Šaukyklos archyvas

Apklausa

Ar esate patenkinti lietuviško vertimo kokybe?

Taip!

Taip, bet yra ką taisyti (parašysiu komentaruose)

Ne

Norėdamas balsuoti turite prisijungti.
Archyvas
Reklama 400x60
PHP Ciklai
Ciklai
Jei ne ciklai, programavimas būtų gana nuobodus užsiėmimas. Ciklas, tai priemonė, kurios pagalba galima vykdyti kodą nurodytą skaičių kartų arba tol, kol nebus įvykdyta kokia nors sąlyga. PHP kalboje yra du ciklų tipai: while ir for. Ciklai while tikrina sąlygas prieš arba po kiekvieno ciklo pakartojimo ir kartoja ciklą tik tuo atveju, jei sąlyga vis dar netenkinama. Cikle for, prieš pirmą ciklo pakartojimą, nurodomas ciklo kartojimų skaičius, kuris negali būti keičiamas ciklo vykdymo metu.

Ciklai while

Šio ciklo sintaksė panaši į operatoriaus if sintaksę.
while(sąlyga) {
...kodas...
}
Ciklo while sąlyga yra loginio tipo. Jeigu ji įgija reikšmę false, tai kodas parašytas rietiniuose skliaustuose praleidžiamas. Jei true - kodas riestiniuose skliaustuose vykdomas. Pasiekus ciklo uždarymo skliaustą }, reikšmė vėl tikrinama ir, jei ji teisinga ciklas kartojamas. Tokiu būdu ciklas yra kartojamas tol, kol [vykdoma sąlyga. Atkreipkite dėmsį į tai, jog sąlyga yra tikrinama kiekvieno ciklo pakartojimo pradžioje, todėl jei sąlyga bus pateinkinta jau kodo viduryje, tai kodas bus vis tiek vykdomas iki galo. Norint nutraukti ciklo darbą prieš laiką naudokite operatorių break.
$i=11;
while(--$i) {
if(mano_funkcija($i) == "error") {
break; //sustabdyti ciklą
}
++$kinamasis;
}
Jeigu numanoma mano_funkcija() funkcija, duotame pavyzdyje, neduos jokios klaidos, tai ciklas bus kartojamas dešimt kartų, tol, kol $i reikšmė bus lygi nuliui (priminimas: nulis grąžina reikšmę "false"). Jei funkcija mano_funkcija() grąžina klaidą, įvykdomas operatorius break ir ciklas sustabdomas. Tačiau kartais tereikia prašokti vieną ciklo kartojimą ir prieiti prie kito, nestabdant paties ciklo. Tam naudojamas operatorius continue.
$i=11;
while(--$i) {
if(mano_funkcija($i) == "error") {
continue; //pereiti prie kito ciklo kartojimo, nepadidinant $kintamasis reikšmės.
}
++$kinamasis;
}
Šis kodas taip pat yra vykdomas dešimt kartų, jei mano_funkcija() negrąžina klaidos. Tačiau priešingu atveju ciklas nėra stabdomas, o yra pereinama prie kito pakartojimo, nepakeičiant $kintamasis reikšmės.Jei po to $i reikšmė vis dar nelygi nuliui, ciklas kartojamas kaip įprasta.

Ciklai do...while

Ciklas do...while analogiškas while, tačiau sąlyga čia tikrinama ne pradžioje, bet pabaigoje kiekvieno pakartojimo. Tai reiškia, kad ciklas bus kartojamas bent vieną kartą:
echo("<SELECT name='dalys'>\n");
$i=0;
do {
echo ("\t<OPTION value=$i>$i</OPTION>\n");
} while (++$i < $kiekis);
echo("</SELECT>\n");
Vykdant šį kodą nulis bus išvedamas visada, kaip vienas iš pasirinkimų. Kitų pasirinkimų skaičius priklausys nuo $kiekis reikšmės.
Ciklai while ir do...while dažnai naudojami kartu su inkrementacijos(padidinimo vienetu) ir dekrementacijos(sumažinimo vienetu) operatoriais, siekiant nurodyti ciklo kartojimų skaičių. Operatoriai while taip pat dažnai naudojami skaitant duomenis iš duomenų bazės, eilutes iš failų, elementus iš masyvų(bet apie tai vėliau).

Ciklai for

Ciklo for sintaksė yra šiek tiek sudėtingesnė nei while, tačiau kartais naudoti for daug naudingiau.
for($i=1; $i<11; ++$i) {
echo("$i <br> \n"); // išvedami skaičiai nuo 1 iki 10
}
Ciklo for skliausteliuose nurodomi trys išsireiškimai, atskiriami kabliataškiais. Pirmuoju iš jų priskiriama reikšmė ciklo kintamajam. Šis išsireiškimas vykdomas tik prieš pirmą ciklo pakartojimą. Kitas išsireiškimas yra loginio tipo, ir yra tikrinamas kiekvieno ciklo pakartojimo pradžioje. Jei šio išsireiškimo reikšmė yra true, ciklas yra kartojamas, jei false, ciklo vykdymas sustabdomas. Trečiasis išsireiškimas vykdomas kiekvieno ciklo pakartojimo gale ir dažniausiai naudojamas ciklo kintamojo padidinimui arba sumažinimui.
Vidurinis išsireiškimas dažniausiai palygina ciklo kintamajį su kokia nors anksčiau nustatyta reikšme, tačiau taip yr nevisada. Pavyzdyje pateiktas kiek kitokio panaudojimo pavyzdys.
for($i=1; mano_funkcija($i) != "klaida"; ++$i) {
// vykdomas kodas, kol mano_funkcija() negrąžina klaidos
}
Tą patį galima padaryti ir su ciklu while.
$i=1;
while (mano_funkcija($i) != "klaida") {
// vykdomas kodas, kol mano_funkcija() negrąžina klaidos
++$i;
}
Nėra tokios užduoties, kurią būtų galima atlikti su ciklu for, bet negalima atlikti su while. Tačiau dažniausiai ciklas for atrodo daug kompaktiškesnis ir labiau organizuotas.
Kaip ir kitose į C panašiose kalbose, PHP yra leidžiama (nors sutinkama retai) palikti vieną ar daugiau iš trijų minėtų išsireiškimų tuščiais.
for( ; ; ) {
if(mano_funkcija() == "stop") break;
}
Jeigu loginis išsireiškimas yra tuščias, tai pagal nutylėjimą jis grąžina true. Tai gali sąlygoti ir begalinio ciklo atsiradimą, jei nenaudosime break, return arba exit. Be abejo, pagrindas tam, kad nenaudoti kurio nors iš išsireiškimų cikle for, atsiranda retai.



Straipsnio informacija

Autorius
N3PST3R
Parašymo data
2006 spalio 26 21:10:26
Komentarų
0
Skaityta
919
Spausdinti Spausdinti
Komentarai
Komentarų neparašyta.
Rašyti komentarą
Prisijunkite, norėdami parašyti komentarą.
Reitingai
Balsuoti gali tik nariai.

Prašome prisijungti arba prisiregistruoti.

Nėra reitingų.