1 / 38

Vektoret

Vektoret. Programim ne Web Leksion 4. Vektoret. Nje vektor ( array) eshte nje varg objektesh me tip dhe madhesi te njejte . Krijimi i nje vektori ne PHP: $languages[ ] = "Spanish"; // $languages[0] = "Spanish"

livana
Download Presentation

Vektoret

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Vektoret Programim ne Web Leksion 4 Iralda Mitro

  2. Vektoret • Njevektor (array) eshtenjevargobjektesh me tip dhemadhesitenjejte. Krijimiinjevektori ne PHP: $languages[ ] = "Spanish"; // $languages[0] = "Spanish" • Mundteshtoniedheelementetetjera ne vektor pa percaktuarindekset e elementeve, si me poshte: $languages[ ] = "English"; // $languages[1] = "English" $languages[ ] = "Shqip"; • Cdo element i ri shtohet ne pozicionin “gjatesia e vektorit +1” • Ose mund te shtoni elementet e vektorit ne nje pozicion te caktuar, psh: $languages[15] = "Italian"; Iralda Mitro

  3. Vektoret e gatshem • Ne PHP ka trefunksionetegatshem per tendertuarnjevektor. • array() • list() • range() • Megjithesetetrearrijnetenjejtinrezultat, per krijimin e vektorit, ka rastekurperdorimiinjeritfunksioneshte me ipershtatshem se tetjeret. Iralda Mitro

  4. array() • Kyfunksionmerrsi input zero ose me shumeelementedhekthennjevektorteperberengaketoelemente. Sintaksaeshte: • array array ( [element1, element2 … ] ) • Funksioni array() ndoshtanukeshteasgje me teper se njedeklarim me iqarteqepokrijohetnjevektor • Shembull $languages = array ("English", "Shqip", "Spanish"); Iralda Mitro

  5. array() • Ne PHP mundtekrijoniedhevektoreteshoqeruar. Psh: $languages = array ("Spain" => "Spanish", “Shqiperi" => "Shqip", "United States" => "English"); // $languages["Spain"] = "Spanish" // $languages["Shqiperi"] = "Shqip" // $languages["United States"] = "English” • Perdorimiivektoreveteshoqeruareshteipershtatshemveçanerisht ne rastetkurperdorimiivleraveteindeksuaranuk ka kuptim. Iralda Mitro

  6. list() • Kyfunksioneshteingjashem me array(), megjitheseperdoret per tedhenevleranjekohesishtvariablave, ngavlerat e marranganjevektor, me njeveprimtevetem. Sintaksa e tijeshte : • void list (variable1 [, variable2, ...] ) • Mundtejeteveçanerishtinevojshemkurmerretinformacioninganjebazetedhenashosenganjeskedar. • Supozojme se duamteformatojmedheteafishojmeinformacionin e marrenganjeskedartekst, kuçdorreshtiskedaritpermbaninformacionin e perdoruesit, duke perfshireketuemrin, profesionindhengjyren e preferuar, kusecilapjese e informacionitndahet me njevijetedrejte ( | ). Cdorresht do tedukejsi: • Al Pacino|Actor|green • Banderas|Actor|red • Neseperdorim list(), me njecikeltethjeshtemundtelexohetçdorresht, tecaktohetçdopjeseinformacioni ne njevariabel, teformatohendheteafishohentedhenatsipasnevojes. Iralda Mitro

  7. list() // Per sakoheqenukeshtearriturfundiiskedarit (end-of-file), merrrreshtintjeter while ($line = fgets ($user_file, 4096)) : // perdor split() per tendareçdopjesetedhenash, // caktotedhenatsivleraper variablat$name,$occupation, dhe $color list ($name, $occupation, $color) = split ( "|", $line); // formatodheafishotedhenat print "Name: $name <br>"; print "Occupation: $occupation <br>"; print "Favorite color: $color <br>"; endwhile; Cdorresht do telexohet e teformatohetsipasrradhessi me poshte: Name: Al Pacino Occupation: Actor Favorite Color: green Iralda Mitro

  8. range() • Kyfunksionofronnjemenyretelehtedheteshpejte per tekrijuardhembushurnjevektor me nje rang tecaktuarvlerashteplota (integer), duke percaktuarrangunngavlera me e vogelderitek me e madhja. array range (int low, int high) Shembull: $lottery = range(0,9); // $lottery = array(0,1,2,3,4,5,6,7,8,9); Iralda Mitro

  9. Vektoret shume-dimensionale • Ne PHP mundtekrijojmeedhevektoreshume-dimensionale (vektorvektoresh) sime poshte: • dy-dimensional • $chessboard[1][4] = "King"; • $capitals["USA”]["Ohio"] = "Columbus"; • $kryeqytetet[“Britani”][“Skoci”]=“Celtics”; • tre-dimensional • $streets["USA“]["Ohio"]["Columbus"] = "Harrison"; • $rruget[“Albania”][“Tirana”][“Blloku”] = “Rruga Ismail Qemali”; Iralda Mitro

  10. Vektoret shume-dimensionale PSh: Keminjevektorqepermbaninformacionrrethembelsiravedhedetajevetepergatitjes se tyre. Do teishteshume e veshtireterealizohejkjo me njevektornje-dimensional, prandajperdorimnjevektordy-dimensional: $desserts = array ( "Fruit Cup" => array ( "calories" => "low", "served" => "cold", "preparation" => "10 minutes" ), “Cake" => array ( "calories" => "high", "served" => "hot", "preparation" => "45 minutes" ) ); Iralda Mitro

  11. Vektoret shume-dimensionale • Pasieshtekrijuarvektori, çdoelementimundt’ireferohemisipasçelesaveperkates: • $desserts["Fruit Cup"] ["preparation"] // kthen "10 minutes“ • $desserts[“Cake"] ["calories"] // kthen "high" • Vektoreveshume-dimensionalemundt’ujepenvlera ne tenjejtenmenyresiatanje-dimensionale: • $desserts["Cake"]["calories"] = "too many"; • // caktohetvlera "too many" per veçorine “calories” te "Cake" Iralda Mitro

  12. Si i referohemi vektoreve shume-dimensionale? • Vektoreveshume-dimensionaleireferohemi ne njemenyrepak me ndryshe se tipevetetjeratetedhenave. Mundteperdorimoperatorin e ngjitjes se stringjeve: • print “Kalorite e kekutjane“. $desserts[“Cake"]["calories"]; • Osemundtevendosimvektorinshume-dimensionale ne kllapa {}: • print “Kalorite e kekutjane {$desserts[Cake][calories]}”; • Vereni! • nukperdorimthonjeza per çelesat e vektorit • nukka hapesirameskllapa {} dhereferimittevektorit. Iralda Mitro

  13. Kapja e vlerave te vektorit • PHP ka disadisafunksione per temarrevleratdheçelesat e njevektori. • Funksioniin_array() perdoret per tepercaktuarshpejtnesenje element ndodhetapojo ne njevektordhekthen true nesendodhetdhe false, ne tekundert. Sintaksaeshte: boolin_array(mixed element, array array) • Ky funksion eshte i pershtatshem sepse eliminon perdorimin e cikleve per te kerkuar ne çdo element te vektorit. • Ne keteshembullperdoretin_array() per tekerkuarelementin "Russian" ne vektorin $languages: $languages = array ("English", "Shqip", "Spanish"); $exists = in_array("Russian", $languages); // false $exists = in_array("English", $languages); // true Iralda Mitro

  14. array_keys() • Kyfunksionkthennjevektorqepermbantegjitheçelesatqendodhen ne vektorin input. Neseperdorniopsioninsearch_element, atehere do tekthejevetemçelesatqeikorrespondojneatijelementiteveçante, perndryshe do tekthehentegjitheçelesat e vektorit. • Sintaksaeshte: • array array_keys (array array, [search_element]) • Shembull per tekthyerçelesin e njeelementitedhene: $great_wines = array (“Australia” => “Hills 96”, “France” => “Vogue 97” , “Austria” => “Artinger 97”); $great_labels = array_keys($great_wines); // $great_labels = array(“Australia”, “France”, “Austria”); $great_labels = array_keys($great_wines, “Hills 96"); // $great_labels= array("Australia"); Iralda Mitro

  15. Shembull - array_keys() $kryeqyetet = array (“Itali” => “Rome”, “Gjermani” => “Berlin”, “Spanje” => “Madrid”, “Kosove” => “Prishtine”); $shtetet = array_keys($kryeqyetet); $shtetet = array(“Itali”, “Gjermani”, “Spanje”, “Kosove”); Iralda Mitro

  16. array_values() • Funksioniarray_values() kthennjevektorqepermbantegjithavleratqeperbejnevektorin input. Sintaksaeshte: • array array_values(array array) • Ne shembullin e meparshem perdorem array_keys() per temarreçelesat e vektorit, tani do teperdorimarray_values() per temarrevlerat e vektorit. $great_wines = array (“Australia” => “Hills 96”, “France” => “Vogue 97” , “Austria” => “Artinger 97”); $great_labels = array_values($great_wines); //$great_labels = array (“Hills 96”, “Vogue 97”, “Artinger 97”); Iralda Mitro

  17. Shembull – array_values() $kryeqyetet = array (“Itali” => “Rome”, “Gjermani” => “Berlin”, “Spanje” => “Madrid”, “Kosove” => “Prishtine”); $qytetet = array_values($kryeqyetet); $qytetet = array(“Rome”, “Berlin”, “Madrid”, “Prishtine”); Iralda Mitro

  18. Shtimi dhe heqja e elementeve • array_push() • Kyfunksionshtonnjeose me shumevlera ne fund tevektorit. • intarray_push(array array, mixed var, […]) • Gjatesia e vektorit do territet ne perpjestimtedrejte me numrin e vleraveqefuten ne vektor. • Shembull: $languages = array("Spanish", "English", "French"); array_push($languages, "Russian", "German", "Shqip"); Iralda Mitro

  19. Shtimi dhe heqja e elementeve • array_pop() • Kyfunksioneshteikundertiifunksionitarray_push(), duke hequrnjevlerengafundiivektoritdhekthenketevlere. • mixed array_pop(array array) • Ne çdoiteracionarray_pop() do teshkurtojegjatesine e vektorit me 1. $languages = array ("Spanish", "English", "French", "Russian", "German", "Shqip"); $a_language = array_pop ($languages); // $a_language = "Shqip" $a_language = array_pop ($languages); // $a_language = "German” Iralda Mitro

  20. Shtimi dhe heqja e elementeve • Ndryshimi kryesor ndermjet array_push() dhearray_pop() eshte se array_push() lejonteshtohendisaelementenjekohesisht, ndersaarray_pop() mundteheqeçdo here, vetemnganjeelement. • Arsyejapseperdorenarray_push() dhearray_pop() eshte se atoofrojnenjemenyretepaster per temanipuluarelementet e vektoritdhe per tekontrolluargjatesine pa u shqetesuar per vlerat e painicializuaraapoboshe. Iralda Mitro

  21. Shtimi dhe heqja e elementeve • array_shift() • Kyfunksionvepronsiarray_pop(), vetem se aiheqnje element ngafillimi (ana e majte) e vektorit. Te gjitheelementet e mbeturtevektoritshtyhen me njenjesidrejtfillimittevektorit. • mixed array_shift (array array) • Shembull: $languages = array("Spanish", "English", "French", "Russian"); $a_language = array_shift($languages); // $a_language = "Spanish"; // $languages = array("English", "French", "Russian"); Iralda Mitro

  22. Shtimi dhe heqja e elementeve • array_unshift() • Kyeshtefunksionikundert me array_shift, se shtonvlera ne fillimdheishtynvlerat e vektorit ne tedjathte: • intarray_unshift(array array, mixed var1 [, mixed var2. . .]) • Mundteshtoninjeose me shumevleranjekohesishtdhegjatesia e vektoritrritet ne perpjestimtedrejte me numrin e vleraveteshtuara. • Shembull: $languages = array ("French", "Italian", "Spanish"); array_unshift ($languages, "Russian", "Chinese"); // $languages = array ("Russian“, "Chinese“, // "French", "Italian", "Spanish"); Iralda Mitro

  23. Shtimi dhe heqja e elementeve • array_pad() • Kyfunksionlejonqetezgjerohetnjevektor ne njemadhesiprecize, pratet’irritetmadhesia me njevlere default. • array array_pad(array array, intpad_size, mixed pad_value); • Parametripad_sizepercaktonmadhesine e re tevektorit. • Parametripad_valuepercaktonvleren default e ciladuhettevendoset ne tegjithepozicionet e rejatevektorit. • Nesepad_sizeeshtepozitive, ateherevektori do tezgjerohet ne tedjathte; ndersaneseeshte negative, ne temajte. • Nesevlera absolute e pad_sizeeshte me e vogelose e barabarte me gjatesine e vektorit, ateherenuk do tekryhetasnjeveprim. Iralda Mitro

  24. Shtimi dhe heqja e elementeve • Shembullizgjerimittevektoritngafundi: • $weights = array (1, 3, 5, 10, 15, 25, 50); • $weights = array_pad($weights, 10, 100); • // The result is $weights = array(1, 3, 5, 10, 15, 25, 50, 100, 100, 100) • Shembullizgjerimittevektoritngafillimi: • $weights = array (1, 3, 5, 10, 15, 25, 50); • $weights = array_pad($weights, − 10, 100); • // The result is $weights = array(100, 100, 100, 1, 3, 5, 10, 15, 25, 50) • Shembullinjezgjerimitepasaktetevektorit: • $weights = array (1, 3, 5, 10, 15, 25, 50); • $weights = array_pad ($weights, 3, 100); • // The array $weights remains $weights = array (1, 3, 5, 10, 15, 25, 50) Iralda Mitro

  25. Bredhja e elementeve te vektorit • reset() • Kyfunksion do terikthejeshenjuesin e vektorit, tekelementii pare ivektorit. Gjithashtuaikthenvleren e elementitte pare. Sintaksaeshte: • mixed reset (array array) • Shohimvektorin: • $fruits = array("apple", "orange", "banana"); • Supozojme se shenjuesiiketijvektorieshteivendosur ne elementin "orange." • Ekzekutimii: • $a_fruit = reset ($fruits); • do tadergojeshenjuesinperseri ne fillim, pratekelementi "apple", dhekthen ate vlerenese reset() perdoretsinjefunksion. Perndryshe, aiduhettethirretsi me poshte: • reset ($fruits); • Kykod do tedergojeshenjuesin ne fillim, pornuk do tekthejevlere. Iralda Mitro

  26. Bredhja e elementeve te vektorit • each() • Kyfunksionkryendyveprimeçdo here qeekzekutohet. 1. Kthençiftinçeles-vlereqendodhet ne pozicioninkundodhetshenjuesiaktualisht, 2. Shtynshenjuesin per teelementipasardhes. Sintaksaeshte: • array each (array array) Iralda Mitro

  27. Bredhja e elementeve te vektorit • prev() • Kyfunksionvepronnjellojsi next(), vetem se ai e kthenshenjuesinprapa me njepozicion, perpara se tekthejeelementinqegjen ne ate pozicionteshenjuesit. • Nesezhvendosja do taçojeshenjuesinperparaelementitte pare tevektorit , funksioni do tekthejefalse. Sintaksaeshte: mixed prev (array array) • ShenimNje problem me funksioninprev() eshte se ai do tektheje false edhe per nje element vektoriqeekzistonporqeeshte bosh. Nesejuinteresonthjeshtbredhja e vektorit, duhetteperdornifunksionin each(). Iralda Mitro

  28. Bredhja e elementeve te vektorit • end() • Perdoret per tederguarshenjuesintekelementiifunditivektorit end (array array) • next() • Kyfunksion e zhvendosshenjuesin me njepozicion, perpara se tekthejeelementinqegjen ne ate pozicion. • Nqsgjatezhvendosjes se shenjuesit, ai do teshkoje pas elementittefundittevektorit, funksioninext() do tektheje false. Sintaksaeshte: mixed next (array array) • ShenimNje problem me next() eshteqeai do tekthejegjithashtu false edheneseelementiivektoritekzistonporeshte bosh. Nesejuinteresonthjeshtbredhja e vektorit, duhetteperdornifunksionin each(). Iralda Mitro

  29. Bredhja e elementeve te vektorit Kyshembullperdor each() per tekthyerelementin e gjetur ne pozicioninkundodhetaktualishtshenjuesi: $spices = array("parsley", "sage", "rosemary", "thyme","pepper"); // make sure that array is set at first element reset($spices); // create array $a_spice, which will hold four values. $a_spice = each($spices); Me ekzekutimin e ketijkodi, vektori $a_spice do tepermbajeketoçifteçeles-vlere: • 0 => 0 • 1 => "parsley" • key => 0 • value => "parsley" • "Parsley" mundteafishohet duke perdorursecilenngashprehjet: • print $a_spice[1]; • print $a_spice["value"]; Iralda Mitro

  30. Bredhja e elementeve te vektorit Krijimiinjetabele HTML ngaelementet e vektorit $languages = array ("Country" => "Language", "Spain" => "Spanish", "USA" => "English", "France" => "French", "Russia" => "Russian"); print "<table border=0>"; reset ($languages); // move pointer to 1st element $hd1 = key ($languages); // extract the first key and element $hd2 = $languages[$hd1]; // Print first key and element as table headers print "<tr><th>$hd1</th><th>$hd2</th></tr>"; Iralda Mitro

  31. Bredhja e elementeve te vektorit next($languages); // move to next element set //Print table rows including keys and elements of array while ( list ($ctry,$lang) = each ($languages)) : print "<tr><td>$ctry</td><td>$lang</td></tr>"; endwhile; print "</table>"; // close table • Ngaekzekutimiiketijkodiafishohettabela: Iralda Mitro

  32. Bredhja e elementeve te vektorit • array_walk() • Kyfunksionofronnjemenyretelehte per teaplikuarnjefunksion per tegjitheosedisaelementetenjevektori. Sintaksaeshte: intarray_walk(array array, string func_name, [mixed data]) • Funksioniidhenesiparameter inputifunc_name, mundteperdoret per shumeqellime, psh: kerkimiielementeveqekanenjekarakteristiketeveçanteosemodifikimiivleravetevetevektorit. • Funksionitfunc_nameduhett’ikalohentepaktendyvlera: e paraeshtevlera e vektoritdhe e dytaeshteçelesiivektorit. Nesejepetedheparametriopsional data, atehereai do tejetevlera e trete e func_name. IraldaMitro

  33. Bredhja e elementeve te vektorit • Ne keteshembulltregohetsesimundteperdoretfunksioniarray_walk() per tefshiredublikatat (elementetqeperseriten) ne njevektor: function delete_dupes($element) { static $last=""; if ($element == $last) unset($element); else $last=$element; } $emails = array("blah@blah.com", "chef@wjgilmore.com", "blah@blah.com"); sort($emails); reset($emails); array_walk($emails,"delete_dupes"); //$emails = array("chef@wjgilmore.com", "blah@blah.com"); Iralda Mitro

  34. Bredhja e elementeve te vektorit • array_reverse() • Kyfunksionofronnjemenyretelehte per tepermbysurrendin e elementevetevektorit. Sintaksaeshte: array array_reverse(array array) Shembull: $us_wine_producers = array ("California", "Oregon", "New York", "Washington"); $us_wine_producers = array_reverse ($us_wine_producers); // $us_wine_producers = array ("Washington", "New York", "Oregon", "California"); Iralda Mitro

  35. Bredhja e elementeve te vektorit • array_flip() • Kyfunksion do teshkembeje (“flip”) tegjithaelementetçelesdhevleretevektorit. Sintaksaeshte: array array_flip(array array) • Shembull: $languages = array("Spain" => "Spanish", "France" => "French", "Italy" => "Italian"); $languages = array_flip($languages); // $languages = array("Spanish" => "Spain", // "French" => "France", // "Italian" => "Italy"); • Mbani mend qearray_flip()vetemshkembenkombinimetçeles/vleredhenukpermbyspozicionimin. Per tepermbysurpozicionimin e elementeve, perdorniarray_reverse(). Iralda Mitro

  36. Madhesia e vektorit • sizeof() • Funksionisizeof() perdoretperdoret per tekthyernumrin e elementevetenjevektori. Sintaksaeshte: intsizeof (array array) • Shembull: $pasta = array("bowties", "angelhair", "rigatoni"); $pasta_size = sizeof($pasta); // $pasta_size = 3 Iralda Mitro

  37. Madhesia e vektorit • count() • Kyfunksion, njellojsisizeof(), kthennumrin e elementevetevektorit. Sintaksaeshte: int count (mixed variable) • Ndryshimiivetemeshte se count() jeppak me shumeinformacion ne disaraste: • Nesevariableekzistondheeshtenjevektor, count() do tekthejenumrin e elementevetetij. • Nesevariableekzistonpornukeshtenjevektor, do tekthejevleren ‘1’. • Nesevariablenukekziston, do tekthejevleren ‘0’. Iralda Mitro

  38. Bredhja e elementeve te vektorit • array_count_values() • Kyfunksioneshtenjevariacionisizeof() dhe count(), vetem se ainumeronfrekuencen e vleraveqeshfaqen ne vektor. Sintaksaeshte: array array_count_values (array array); • Kyfunksionkthennjevektorqe do teperdoresiçelesavlerat e vektorit, tedhenesi parameter ndersasivlera do teketefrekuencat e tyrekorresponduese, siçilustrohet ne shembullinmeposhtem: • $states = array("OH", "OK", "CA", "PA", "OH", "OH", "PA", "AK"); • $state_freq = array_count_values($states); • Vektori $state_freq do tepermbajetaniketolidhjeçeles/vlere: • $state_freq = array("OH" => 3, "OK" => 1, "CA" => 1, "PA" => 2, "AK" => 1); Iralda Mitro

More Related