PHP vs. Ruby

PHP ja Ruby on PHPRubiinBlokeeri kommentaaride eraldaja / * ja * / = algab ja = lõpeb; ka tekst pärast __END__ Avalduse lõpetajad Semikoolon lõpetatud Uus liin lõpetati Massiivid dünaamiliselt Jah Jah Komplektsed kommentaarid eraldavad // ja # # Klassid Jah Jah Keelte liitmise operaator . (punkt) + (plussmärk) Programmeerimisparadigmad hädavajalik, objektorienteeritud, peegeldav Imperatiivne, objektorienteeritud, peegeldav, aspektile orienteeritud, funktsionaalne OOP (objektorienteeritud programmeerimine) Jah, üksik pärand. Jah, aga sa ei pea seda tegema. Toetatud on mitmemõõtmelised massiivid Jah Jah Massiivi elementide juurdepääs $ massiiv [i] massiiv [i] Tüübi kontrollimine Dünaamiline Dünaamiline Stringi pikkuse süntaks strlen ($ string) string.suurus või string.length Prügivedu Jah Jah Vektoriseeritud operatsioonid Jah Jah Stringide võrdluse süntaks strcmp ($ string1, $ string2) string1 string2 String võrdsuse testimise süntaks $ string1 == $ string2 string1 == string2 Tippimine Nõrk kirjutamine Tugevalt trükitud Stringiotsingu süntaks strpos ($ string, $ substring [, startpos]) tagastab VIGA, kui otsinguelementi ($ substring) ei leitud string.index (alamstring [, alguspostid]) tagastab nulli, kui otsinguelementi (alamstringit) ei leitud Stringivormingu süntaks sprintf (vormingustringid, üksused) sprintf (vormingustringid, üksused) Süntaks ridade liitmiseks implode (eraldaja, massiivi_stringid) array_of_strings.join (eraldaja) Alamstringi süntaks substr (string, alguspostid, numChars) string [alguspostid, numChars] Süntaks otsinguks ja asendamiseks stringi sees str_replace ($ leidma, $ asendama, $ string) string.gsub (otsi, asenda) Mõeldud kasutamiseks Veebirakendused, CLI Rakendused, skriptid Süntaks stringi ümberpööramiseks strrev ($ string) string.reverse Keele kujundamise eesmärgid Tugevus ja lihtsus Ekspressiivsus, loetavus Süntaks stringi teisendamiseks suurtäheks strtoupper ($ string) string.papp Kasutamisnäited WordPress, Vikipeedia Indiegogo, Hulu

Sisu: PHP vs Ruby

  • 1 assotsiatiivne massiiv PHP-s vs Ruby
    • 1.1 PHP
    • 1.2 Rubiin
  • 2 viidet

Assotsiatiivsed massiivid PHP-s vs Ruby

PHP

PHP sisseehitatud massiivi tüüp on tegelikkuses assotsiatiivne massiiv. Isegi numbriliste indeksite kasutamisel salvestab PHP selle sisemiselt assotsiatiivse massiivina. Seetõttu võib ühel PHP-s olla järjestikuseid numbriliselt indekseeritud massiive. Klahvid peavad olema skalaarväärtused (string, ujukoma arv või täisarv), samas kui väärtused võivad olla suvalisi tüüpe, sealhulgas muud massiivid ja objektid. Massiivid on heterogeensed; ühel massiivil võib olla erinevat tüüpi võtmeid. PHP assotsiatiivseid massiive saab kasutada puude, loendite, virnade, järjekordade ja muude tavaliste andmestruktuuride, mis pole PHP-sse sisse ehitatud, tähistamiseks.

PHP-s saab assotsiatiivse massiivi moodustada kahel viisil:

$ telefoniraamat = array (); $ telefoniraamat ['Sally Smart'] = '555-9999'; $ telefoniraamat ['John Doe'] = '555-1212'; $ telefoniraamat ['J. Juhuslik häkker '] =' 555-1337 '; // või $ telefoniraamat = array ('Sally Smart' => '555-9999', 'John Doe' => '555-1212', 'J. Random Hacker' => '555-1337',); // või $ telefoniraamat ['kontaktid'] ['Sally Smart'] ['number'] = '555-9999'; $ telefoniraamat ['kontaktid'] ['John Doe'] ['number'] = '555-1212'; $ telefoniraamat ['kontaktid'] ['J. Juhuslik häkker '] [' number '] =' 555-1337 '; 

Samuti saate PHP-s läbi viia assotsiatiivse massiivi järgmiselt:

foreach ($ telefoniraamat kui $ nimi => $ number) echo "Number $ nime jaoks: $ number \ n";  
// Viimase massiivi näites kasutatakse seda nagu seda juttu ($ telefoniraamat ['kontaktid'] kui $ name => $ num) echo "Nimi: $ name"; kaja "arv: $ num ['number']";  

PHP-l on massiivides töötamiseks ulatuslik funktsioonide komplekt.

Rubiin

Ruby's nimetatakse assotsieerunud massiivi Hash ja seda kasutatakse järgmiselt:

telefoniraamat = 'Sally Smart' => '555-9999', 'John Doe' => '555-1212', 'J. Juhuslik häkker '=>' 553-1337 ' 

telefoniraamat ['John Doe'] toodab '555-1212'

Räsil korramiseks kasutage järgmist:

telefoniraamat.each | võti, väärtus | paneb klahvi + "=>" + väärtus 

Lisaks võidakse iga klahvi näidata eraldi:

telefoniraamat.each_key | võti | paneb võtme 

Iga väärtust võib näidata ka:

telefoniraamat.each_value | väärtus | paneb väärtust 

Viited

  • PHP ja Ruby süntaks, võrdlus üksteisega