⊗ppPmLpFl 124 of 447 menu

Puna me flamuj në PHP

Tani do të mësojmë të punojmë me flamuj. Një flamuj - është një variabël e veçantë, e cila mund të marrë vetëm dy vlera: true dhe false. Me ndihmën e flamujve mund të zgjidhen probleme që kontrollojnë mungesën e diçkaje: për shembull, mund të kontrollohet që në një array nuk ka asnjë element me një vlerë të caktuar. Le të fillojmë.

Le të zgjidhim problemin e mëposhtëm: jepet një array me numra, duhet të kontrollohet, nëse në të ka një element me vlerën 3 apo jo. Nëse ka - do të printojmë '+++', nëse jo - do të printojmë '---'.

Për fillim le të përpiqemi të printojmë '+++'. Për këtë do të përsërisim përmes të gjithë elementëve të array-it tonë dhe me një if do të pyesim - a është i barabartë elementi aktual me vlerën 3. Nëse është i barabartë - do të printojmë '+++':

<?php $arr = [1, 2, 3, 4, 5]; foreach ($arr as $elem) { if ($elem === 3) { echo '+++'; } } ?>

Por zgjidhja jonë nuk është shumë e mirë: në fund të fundit nëse në array do të ketë jo një vlerë 3, por disa, atëherë '+++' do të printohet disa herë. Le të rregullojmë array-in tonë (le të bëjmë dy elementë me vlerën 3) dhe të bindemi në këtë:

<?php $arr = [1, 2, 3, 4, 3, 5]; foreach ($arr as $elem) { if ($elem === 3) { echo '+++'; // do të printojë disa herë } } ?>

Le të rregullojmë problemin: le ta përfundojmë ciklin me ndihmën e break, nëse elementi tashmë është gjetur:

<?php $arr = [1, 2, 3, 4, 3, 5]; foreach ($arr as $elem) { if ($elem === 3) { echo '+++'; break; // përfundojmë ciklin } } ?>

Tani le të përpiqemi të bëjmë që, nëse në array nuk ka fare elementë me vlerën 3, të printohet '---'. Një keqkuptim i përhapur do të ishte të shtohet else te if-i ynë - në këtë rast '---' do të printohej për të gjithë elementët, që nuk janë 3:

<?php $arr = [1, 2, 3, 4, 5]; foreach ($arr as $elem) { if ($elem === 3) { echo '+++'; // do të printojë te elementi 3 } else { echo '---'; // do të printojë te elementët 1, 2, 4, 5 } } ?>

Pra, ideja për të shtuar else - është një ide e keqe dhe jo funksionale. Për zgjidhjen e problemeve të këtij tipi (probleme të tilla hasen mjaft shpesh) përdoren të ashtuquajturat flamuj.

Siç është përmendur më lart, një flamuj - është një variabël e tillë, e cila mund të marrë dy vlera: true ose false.

Pra, le të bëjmë një variabël flag me këtë vlerë: nëse ajo është e barabartë me true, atëherë në array ka një element 3, por nëse false, atëherë nuk ka një element të tillë.

Fillimisht le ta vendosim variablin flag në vlerën false - domethënë do të konsiderojmë, që elementi 3 nuk gjendet në array:

$arr = [1, 2, 3, 4, 5]; $flag = false; // konsiderojmë se elementi 3 nuk gjendet në array

Pastaj do të nisim një cikël me një if, ashtu siç e bënim këtë më parë. Nëse cikli zbulon se në array ka një element 3 - atëherë do ta vendosim variablin flag në vlerën true dhe do të dalim nga cikli me ndihmën e break:

<?php $arr = [1, 2, 3, 4, 5]; $flag = false; // konsiderojmë se elementi 3 nuk gjendet në array foreach ($arr as $elem) { if ($elem === 3) { $flag = true; // elementi gjendet - ridefinjojmë variablin $flag break; // dalim nga cikli } } ?>

Përgjigjen në pyetjen, nëse në array gjendet 3 apo jo, ne mund ta japim vetëm pas ciklit. Dhe kjo përgjigje tashmë e kemi: pas ciklit variabli flag mund të ketë mbetur false ose mund të ketë ndryshuar vlerën e saj në true, nëse cikli zbuloi në array 3:

<?php $arr = [1, 2, 3, 4, 5]; $flag = false; foreach ($arr as $elem) { if ($elem === 3) { $flag = true; break; } } // këtu variabli $flag është i barabartë ose me true, ose me false ?>

Tani pas ciklit ne mund të bëjmë një if, i cili do të shikojë variablin flag dhe do të printojë në ekran '+++' ose '---':

<?php $arr = [1, 2, 3, 4, 5]; $flag = false; foreach ($arr as $elem) { if ($elem === 3) { $flag = true; break; } } if ($flag === true) { echo '+++'; } else { echo '---'; } ?>

Jepet një array:

<?php $arr = ['a', 'b', 'c', 'd', 'e']; ?>

Kontrolloni, nëse në këtë array ka element 'c'. Nëse ka - printoni '+++', por nëse nuk ka - printoni '---'.

Shkruani kod, i cili do të kontrollojë nëse një numër është i thjeshtë apo jo. Një numër i thjeshtë pjestohet vetëm me një dhe me vetveten, dhe nuk pjestohet me numra tjerë.

Shqip
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Ne përdorim cookie për funksionimin e sajtit, analizën dhe personalizimin. Përpunimi i të dhënave bëhet në përputhje me Politikën e Privatësisë.
prano të gjitha konfiguro refuzo