Php vs. Rubin
- 5060
- 287
- Hr. Jeremie Orth
PHP und Ruby sind serverseitige Skriptsprachen - am häufigsten zur Entwicklung von Webseiten verwendet.
Vergleichstabelle
Unterschiede - Ähnlichkeiten -Php | Rubin | |
---|---|---|
|
| |
Block Kommentare Gremiter | /* Und */ | = Beginnen Sie und = Ende; Auch jeder Text nach __end__ |
Erklärung Terminatoren | Semikolon beendet | Newline beendet |
Arrays dynamisch Größe | Ja | Ja |
Inline -Kommentare Abgrenzer | // Und # | # |
Klassen | Ja | Ja |
String -Verkettung Operator | . (Punkt) | + (das Pluszeichen) |
Programmierparadigmen | imperativ, objektorientiert, reflektierend | Imperativ, objektorientiert, reflektierend, aspektorientiert, funktional |
OOP (objektorientierte Programmierung) | Ja, einzelnes Vererbung. | Ja, aber du musst nicht. |
Mehrdimensionale Arrays unterstützt | Ja | Ja |
Array -Elementzugriff | $ array [i] | Array [i] |
Geben Sie die Überprüfung ein | Dynamisch | Dynamisch |
Syntax für die Stringlänge | Strlen ($ String) | Saite.Größe oder Zeichenfolge.Länge |
Müllsammlung | Ja | Ja |
Vektorisierte Operationen | Ja | Ja |
String -Vergleichssyntax | STRCMP ($ String1, $ String2) | String1 String2 |
String -Gleichstellungstestsyntax | $ string1 == $ string2 | String1 == String2 |
Typisierung | Schwache Typisierung | Stark tippt |
String -Suche Syntax | Strpos ($ String, $ substring [, startpos]) Gibt false zurück, wenn das Suchelement ($ substring) nicht gefunden wurde | Saite.Index (Substring [, startpos]) gibt NIL zurück, wenn das Suchelement (Substring) nicht gefunden wurde |
String -Formatierungssyntax | Sprintf (Formatstring, Gegenstände) | Sprintf (Formatstring, Gegenstände) |
Syntax für den Beitritt zu einer Reihe von Strings | Implode (Separator, Array_of_strings) | Array_of_strings.Join (Separator) |
Syntax für Substring | Substr (String, Startpos, Numchars) | String [Startpos, Numchars] |
Syntax für die Suche und Ersetzung innerhalb der String | str_replace ($ find, $ ersetzen, $ String) | Saite.GSUB (suchen, ersetzen) |
Verwendungszweck | Webanwendungen, CLI | Anwendungen, Skripten |
Syntax zum Umkehren einer Zeichenfolge | Strrev ($ String) | Saite.umkehren |
Sprachdesignziele | Robustheit und Einfachheit | Ausdruckskraft, Lesbarkeit |
Syntax für die Konvertierung von String in Oberkoffer | Strtoupper ($ String) | Saite.oben |
Beispiele für die Verwendung | WordPress, Wikipedia | Indiegogo, Hulu |
Assoziative Arrays in PHP vs. Rubin
Php
Der integrierte Array-Typ von PHP ist in Wirklichkeit ein assoziatives Array. Selbst bei Verwendung numerischer Indizes speichert PHP es intern als assoziatives Array. Aus diesem Grund kann man in PHP nicht aufeinanderfolgende numerisch indizierte Arrays haben. Die Schlüssel müssen Skalarwerte (String, Schwimmpunktzahl oder Ganzzahl) sein, während Werte von willkürlichen Typen sein können, einschließlich anderer Arrays und Objekte. Die Arrays sind heterogen; Ein einzelnes Array kann Tasten verschiedener Typen haben. Die assoziativen Arrays von PHP können verwendet werden, um Bäume, Listen, Stapel, Warteschlangen und andere gemeinsame Datenstrukturen darzustellen, die nicht in PHP integriert sind.
In PHP kann auf zwei Arten ein assoziatives Array gebildet werden:
$ melebook = array (); $ moneBook ['Sally Smart'] = '555-9999'; $ Telefonbuch ['John Doe'] = '555-1212'; $ Telefonbuch ['J. Zufälliger Hacker '] =' 555-1337 '; // oder $ melebook = array ('sally smart' => '555-9999', 'John Doe' => '555-1212', 'J. Zufälliger Hacker '=>' 555-1337 ',); // oder $ melebook ['Kontakte'] ['Sally Smart'] ['Nummer'] = '555-9999'; $ melebook ['Kontakte'] ['John Doe'] ['Nummer'] = '555-1212'; $ Telefonbuch ['Kontakte'] ['J. Zufälliger Hacker '] [' Nummer '] =' 555-1337 ';
Sie können auch ein assoziatives Array in PHP wie folgt durchlaufen:
foreach ($ monebook as $ name => $ nummer) echo "nummer für $ name: $ nummer \ n";
// Für das letzte Array -Beispiel wird es so verwendet ($ moneBook ['Kontakte'] als $ name => $ num) echo "Name: $ name"; echo "number: $ num ['number']";
PHP verfügt über umfangreiche Funktionen, um auf Arrays zu arbeiten.
Rubin
In Ruby wird ein assoziiertes Array als Hash bezeichnet und wie folgt verwendet:
TelefonBook = 'Sally Smart' => '555-9999', 'John Doe' => '555-1212', 'J. Random Hacker '=>' 553-1337 '
Telefonbuch ['John Doe']
produziert '555-1212'
Verwenden Sie so etwas wie Folgendes, um über den Hash zu iterieren:
Telefonbuch.Jedes | Schlüssel, Wert | Setzt Schlüssel + "=>" + Wert
Zusätzlich kann jeder Schlüssel einzeln angezeigt werden:
Telefonbuch.ENGER_KEY | KEY | Setzt Schlüssel
Jeder Wert kann auch angezeigt werden:
Telefonbuch.ENGER_VALUE | Value | Setzt Wert