PHP vs. Ruby

PHP i Ruby su PHPRubinBlokiraj komentare / * i * / = početak i = kraj; također bilo koji tekst nakon __END__ Terminatori izjave Točka sa zarezom ukinuta Newline je prekinut Nizi dinamički veličine Da Da Ugrađeni komentari razlučivač // i # # klase Da Da Operator za povezivanje stringova . (točka) + (znak plus) Programiranje paradigmi imperativ, objektno orijentiran, reflektiran Imperativni, objektno orijentirani, reflektivni, aspektno orijentirani, funkcionalni OOP (objektno orijentirano programiranje) Da, jedno nasljedstvo. Da, ali ne morate. Podržani višedimenzionalni nizovi Da Da Pristup elementima polja $ Niz [i] niz [i] Provjera tipa Dinamičan Dinamičan Sintaksa za duljinu niza strlen ($ string) string.size ili string.length Kolekcija smeća Da Da Vektorizirane operacije Da Da Sintaksa za usporedbu niza strcmp ($ string1, $ string2) string1 string2 Sintaksa za testiranje jednakosti nizova $ string1 == $ string2 string1 == string2 kucanje Slabo tipkanje Snažno kucano Sintaksa za pretraživanje niza strpos ($ string, $ substring [, startpos]) vraća FALSE ako stavka pretraživanja ($ substring) nije pronađena string.index (substring [, startpos]) vraća nulu ako stavka pretraživanja (podstring) nije pronađena Sintaksa formatiranja niza sprintf (formatstring, predmeti) sprintf (formatstring, predmeti) Sintaksa za spajanje niza nizova implode (separator, niz_of_strings) array_of_strings.join (separator) Sintaksa za podstini substr (string, startpos, numChars) string [startpos, numChars] Sintaksa za pretraživanje i zamjenu u nizu str_replace ($ find, $ zamijeni, $ string) string.gsub (pronađite, zamijenite) Namjena uporabe Web aplikacije, CLI Aplikacije, skriptiranje Sintaksa za preokret niza strrev ($ string) string.reverse Jezični ciljevi dizajna Robusnost i jednostavnost Ekspresivnost, čitljivost Sintaksa za pretvaranje niza u velika slova strtoupper ($ string) string.upcase Primjeri upotrebe WordPress, Wikipedia Indiegogo, Hulu

Sadržaj: PHP vs Ruby

  • 1 asocijativni nizovi u PHP-u u odnosu na Ruby
    • 1.1 PHP
    • 1.2 Ruby
  • 2 Reference

Asocijativni nizovi u PHP-u u odnosu na Ruby

PHP

PHP ugrađeni tip polja je u stvari asocijativni niz. Čak i kada koristi numeričke indekse, PHP ih interno pohranjuje kao asocijativni niz. Zbog toga jedan u PHP-u može imati uzastopne numerički indeksirane nizove. Ključevi moraju biti skalarne vrijednosti (niz, broj s pomičnom zarezom ili cijeli broj), dok vrijednosti mogu biti proizvoljne vrste, uključujući ostale nizove i objekte. Nizovi su heterogeni; jedan niz može imati tipke različitih vrsta. PHP-ovi asocijativni nizovi mogu se koristiti za predstavljanje stabala, popisa, stapova, redova i drugih uobičajenih struktura podataka koje nisu ugrađene u PHP.

U PHP-u asocijativni niz može se formirati na jedan od dva načina:

$ telefonski imenik = niz (); $ telefonski imenik ['Sally Smart'] = '555-9999'; $ telefonski imenik ['John Doe'] = '555-1212'; $ Imenik [ 'J. Slučajni haker '] =' 555-1337 '; // ili $ phonebook = array ('Sally Smart' => '555-9999', 'John Doe' => '555-1212', 'J. Random Hacker' => '555-1337',); // ili $ imenik ['kontakti'] ['Sally Smart'] ['broj'] = '555-9999'; $ telefonski imenik ['kontakti'] ['John Doe'] ['broj'] = '555-1212'; $ Imenik [ 'kontakt'] [ "J.. Slučajni haker '] [' broj '] =' 555-1337 '; 

Također se kroz PHP možete kretati kroz pridruženi niz na sljedeći način:

foreach ($ telefonski imenik kao $ name => $ broj) echo "Broj za $ name: $ number \ n";  
// Za posljednji primjer matrice koristi se ovaj foreach ($ telefonski imenik ['kontakti'] kao $ name => $ num) echo "Ime: $ name"; echo "Broj: $ num ['broj']";  

PHP ima opsežan skup funkcija za rad na nizovima.

Rubin

U Rubyju se pridruženi niz naziva Hash i koristi se na sljedeći način:

imenik = 'Sally Smart' => '555-9999', 'John Doe' => '555-1212', 'J. Slučajni haker '=>' 553-1337 ' 

imenik ['John Doe'] proizvodi '555-1212'

Za ponavljanje hash-a koristite sljedeće poput:

imenik.each | ključ, vrijednost | stavlja ključ + "=>" + vrijednost 

Uz to, svaki se ključ može prikazati pojedinačno:

imenik.each_key | tipka | stavlja ključ 

Svaka vrijednost se također može prikazati:

imenik.each_value | vrijednost | stavlja vrijednost 

Reference

  • PHP i Ruby sintaksa, uspoređivanje