PHP VS. Rubí

PHP VS. Rubí

PHP y Ruby son lenguajes de secuencias de comandos del lado del servidor: más comúnmente utilizados para desarrollar páginas web.

Cuadro comparativo

Diferencias - similitudes - Gráfico de comparación PHP versus Ruby
PhpRubí
  • La calificación actual es 3.66/5
  • 1
  • 2
  • 3
  • 4
  • 5
(114 calificaciones)
  • La calificación actual es 3.46/5
  • 1
  • 2
  • 3
  • 4
  • 5
(103 calificaciones)
Bloquear comentarios delimitador /* y */ = begin y = final; también cualquier texto después de __end__
Terminadores de declaración Semicolon terminado Nueva línea terminada
Matrices de tamaño dinámico
Delimitador de comentarios en línea // y # #
Clases
Operador de concatenación de cadenas . (punto) + (el signo más)
Paradigmas de programación imperativo, orientado a objetos, reflexivo Imperativo, orientado a objetos, reflexivo, orientado a los aspectos, funcional
OOP (programación orientada a objetos) Sí, herencia única. Sí, pero no tienes que hacerlo.
Matrices multidimensionales compatibles
Acceso al elemento de matriz $ matriz [i] matriz [i]
Tipo de comprobación Dinámica Dinámica
Sintaxis para la longitud de la cadena strlen ($ string) cadena.tamaño o cadena.longitud
Recolección de basura
Operaciones vectorizadas
Sintaxis de comparación de cadenas strcmp ($ string1, $ string2) string1 string2
Sintaxis de prueba de igualdad de cadenas $ string1 == $ string2 string1 == String2
Mecanografía Tipificación débil Fuertemente escrito
Sintaxis de búsqueda de cadenas strpos ($ string, $ substring [, startPos]) Devuelve falso si el elemento de búsqueda ($ subcandinato) no se encuentra cadena.Índice (subcubre [, startPos]) Devuelve nil si el elemento de búsqueda (subcadena) no se encuentra
Sintaxis de formato de cadena sprintf (formatString, elementos) sprintf (formatString, elementos)
Sintaxis para unir una variedad de cuerdas Implicar (separador, array_of_strings) array_of_strings.unirse (separador)
Sintaxis para la subcadena subStr (string, startPos, numchars) String [startPos, numchars]
Sintaxis para buscar y reemplazar dentro de la cadena str_replace ($ find, $ reemplazar, $ string) cadena.gsub (encontrar, reemplazar)
Uso previsto Aplicaciones web, CLI Aplicaciones, secuencias de comandos
Sintaxis para revertir una cadena Strrev ($ String) cadena.contrarrestar
Objetivos de diseño del idioma Robustez y simplicidad Expresividad, legibilidad
Sintaxis para convertir la cadena en mayúsculas strtoupper ($ string) cadena.caso
Ejemplos de uso WordPress, Wikipedia Indiegogo, Hulu

Matrices asociativas en PHP vs. Rubí

Php

El tipo de matriz incorporado de PHP es en realidad una matriz asociativa. Incluso cuando se usa índices numéricos, PHP lo almacena internamente como una matriz asociativa. Es por eso que uno en PHP puede tener matrices indexadas numéricamente no consecutivas. Las teclas deben ser valores escalares (cadena, número de punto flotante o entero), mientras que los valores pueden ser de tipos arbitrarios, incluidas otras matrices y objetos. Las matrices son heterogéneas; Una sola matriz puede tener teclas de diferentes tipos. Las matrices asociativas de PHP se pueden usar para representar árboles, listas, pilas, colas y otras estructuras de datos comunes no integradas en PHP.

En PHP, se puede formar una matriz asociativa de una de dos maneras:

$ Phonebook = Array (); $ Phonebook ['Sally Smart'] = '555-9999'; $ Phonebook ['John Doe'] = '555-1212'; $ Libera telefónica ['J. Hacker aleatorio '] =' 555-1337 '; // o $ PhoneBook = Array ('Sally Smart' => '555-9999', 'John Doe' => '555-1212', 'J. Hacker aleatorio '=>' 555-1337 ',); // o $ Phonebook ['Contacts'] ['Sally Smart'] ['Number'] = '555-9999'; $ Phonebook ['Contactos'] ['John Doe'] ['Número'] = '555-1212'; $ Libera telefónica ['Contactos'] ['J. Hacker aleatorio '] [' número '] =' 555-1337 '; 

También puede recorrer una matriz asociativa en PHP de la siguiente manera:

Foreach ($ Phonebook como $ name => $ número) echo "número para $ name: $ number \ n";  
// Para el último ejemplo de matriz, se usa de manera esta foreach ($ 5, ['contactos'] como $ name => $ num) echo "nombre: $ name"; echo "Número: $ num ['número']";  

PHP tiene un extenso conjunto de funciones para operar en matrices.

Rubí

En Ruby, una matriz asociada se llama hash y se usa de la siguiente manera:

Phonebook = 'Sally Smart' => '555-9999', 'John Doe' => '555-1212', 'J. Hacker aleatorio '=>' 553-1337 ' 

Libreta telefónica ['John Doe'] produce '555-1212'

Para iterar sobre el hash, use algo como lo siguiente:

directorio telefónico.cada | clave, valor | Pone la clave + "=>" + valor 

Además, cada clave puede mostrarse individualmente:

directorio telefónico.cada_key | clave | Punta la tecla 

También se puede mostrar cada valor:

directorio telefónico.cada_value | valor | pone valor