PHP vs. Ruby

A PHP és a Ruby is PHPRubinA megjegyzéshatároló letiltása / * és * / = kezdés és befejezés; bármilyen szöveg __END__ után Nyilatkozat befejezők A pontosvessző megszűnt Az új vonal megszűnt Dinamikus méretű tömbök Igen Igen Inline megjegyzések határoló // és # # osztályok Igen Igen Karakterlánc-összekapcsolási operátor . (pont) + (a pluszjel) Programozási paradigmák imperatív, objektum-orientált, reflektív Imperatív, objektum-orientált, reflektív, aspektus-orientált, funkcionális OOP (Object-Oriented Programming) Igen, egyetlen öröklés. Igen, de nem kell. Többdimenziós tömbök támogatottak Igen Igen Tömb elem hozzáférés $ Array [i] array [i] Típusellenőrzés Dinamikus Dinamikus A karakterlánchossz szintaxisa strlen ($ string) string.size vagy string.length Szemétgyüjtés Igen Igen Vektorosított műveletek Igen Igen Karakterlánc-összehasonlító szintaxis strcmp ($ string1, $ string2) string1 string2 String egyenlőség tesztelési szintaxis $ string1 == $ string2 string1 == string2 Gépelés Gyenge gépelés Erősen gépelt Karakterlánc keresési szintaxis strpos ($ string, $ substring [, startpos]) FALSE értéket ad vissza, ha a keresési elem ($ substring) nem található A string.index (alszöveg [, startpos]) nullát ad vissza, ha a keresési elem (alszál) nem található Karakterlánc formázási szintaxis sprintf (formátumhúr, elemek) sprintf (formátumhúr, elemek) Szintaxis egy sor tömb csatlakoztatására implode (elválasztó, sorozat_szálak) array_of_strings.join (szeparátor) Szintaxis az alsó karakterlánchoz substr (string, startpos, numChars) karakterlánc [startpos, numChars] Szintaxis kereséshez és cseréhez a karakterláncban str_replace ($ talál, $ helyettesít, $ string) string.gsub (megtalálni, cserélni) Rendeltetésszerű használat Webes alkalmazások, CLI Alkalmazások, szkriptek Szintaxis egy karakterlánc megfordításához strrev ($ string) string.reverse Nyelvtervezési célok Robusztus és egyszerű Kifejezőképesség, olvashatóság Szintaxis a karakterlánc nagybetűsre konvertálására strtoupper ($ string) string.upcase Példák a felhasználásra WordPress, Wikipedia Indiegogo, Hulu

Tartalom: PHP vs Ruby

  • 1 Asszociatív tömbök a PHP-ben vs. Ruby
    • 1.1 PHP
    • 1.2 Ruby
  • 2 Hivatkozások

Asszociatív tömbök a PHP-ben vs. Ruby

PHP

A PHP beépített tömbtípusa valójában asszociatív tömb. A numerikus indexek használatakor is a PHP asszociatív tömbként tárolja. Ezért lehet a PHP egyikén nem egymást követő, numerikusan indexelt tömbök. A kulcsoknak skaláris értékeknek kell lenniük (karakterlánc, lebegőpontos szám vagy egész), míg az értékek tetszőleges típusúak lehetnek, beleértve az egyéb tömböket és objektumokat is. A tömbök heterogének; egy tömb különféle kulcsokat tartalmazhat. A PHP asszociatív tömbjei a PHP-be nem épített fák, listák, halmok, sorok és egyéb általános adatszerkezetek ábrázolására használhatók..

A PHP-ben asszociatív tömb kétféle módon hozható létre:

$ telefonkönyv = array (); $ telefonkönyv ['Sally Smart'] = '555-9999'; $ telefonkönyv ['John Doe'] = '555-1212'; $ Telefonkönyv [ 'J. Random Hacker '] =' 555-1337 '; // vagy $ telefonkönyv = tömb ('Sally Smart' => '555-9999', 'John Doe' => '555-1212', 'J. Random Hacker' => '555-1337',); // vagy $ telefonkönyv ['névjegyek'] ['Sally Smart'] ['szám'] = '555-9999'; $ telefonkönyv ['névjegyek'] ['John Doe'] ['szám'] = '555-1212'; $ Telefonkönyv [ 'kapcsolatok'] [ 'J. Random Hacker '] [' szám '] =' 555-1337 '; 

Az alábbiak szerint áthúzhat egy asszociatív tömböt a PHP-ben:

foreach ($ telefonkönyv $ name => $ number) echo "$ név neve: $ szám \ n";  
// Az utolsó tömbpéldányhoz hasonlóan ezt a foreach-ot használjuk ($ telefonkönyv ['névjegyek'] $ name => $ num) echo "Név: $ name"; echo "Szám: $ num ['szám']";  

A PHP széles körű funkciókkal rendelkezik a tömbökön történő működéshez.

Rubin

A Ruby-ban társult tömböt Hash-nek hívnak, és az alábbiak szerint használják:

telefonkönyv = 'Sally Smart' => '555-9999', 'John Doe' => '555-1212', 'J. Véletlenszerű hackerek '=>' 553-1337 ' 

telefonkönyv ['John Doe'] termel '555-1212'

Ahhoz, hogy a hash-on iteráljon, használjon valami hasonlót:

telefonkönyv.each | kulcs, érték | elhelyezi a + "=>" + értéket 

Ezenkívül minden kulcs külön jeleníthető meg:

telefonkönyv.each_key | kulcs | helyezi a kulcsot 

Minden érték megjeleníthető:

phonebook.each_value | érték | értékbe helyezi 

Irodalom

  • PHP és Ruby szintaxis, összehasonlítás