var_dump print_r print imprimir español consola array _post php

print_r - var_dump php español



¿Cuál es la diferencia entre echo, print e print_r en PHP? (10)

** Echocan acepta expresiones múltiples mientras que la impresión no puede. La función Print_r () PHP se usa para devolver una matriz en una forma legible por humanos. Simplemente está escrito como

![Print_r ($your_array)][1]

Uso echo e print_r mucho, y casi nunca uso print .

Siento que echo es una macro e print_r es un alias de var_dump .

Pero esa no es la forma estándar de explicar las diferencias.


Solo para agregar a la respuesta de John , echo debe ser el único que use para imprimir contenido en la página.

print es un poco más lenta. var_dump() e print_r() solo deben usarse para depurar.

También vale la pena mencionar que print_r() y var_dump() harán eco por defecto, agregan un segundo argumento a print_r() al menos que se evalúa como verdadero para devolverlo, por ejemplo print_r($array, TRUE) .

La diferencia entre hacer eco y regresar son:

  • echo: Imprimirá inmediatamente el valor en la salida.
  • return: Devolverá la salida de la función como una cadena. Útil para el registro, etc.

ambos son construcciones de lenguaje. el eco vuelve a quedar vacío y la impresión regresa 1. El eco se considera un poco más rápido que la impresión.


echo: echo es una construcción de lenguaje donde no se requiere el uso de paréntesis y puede tomar cualquier cantidad de parámetros y devolver el vacío.

void echo (param1,param2,param3.....); Example: echo "test1","test2,test3";

print: es una construcción de lenguaje donde no se requiere el uso de paréntesis solo toma un parámetro y regresa

1 always. int print(param1); print "test1"; print "test1","test2"; // It will give syntax error

prinf: Es una función que requiere al menos una cadena y un estilo de formato, y devuelve la longitud de la cadena de salida.

int printf($string,$s); $s= "Shailesh"; $i= printf("Hello %s how are you?",$s); echo $i; Output : Hello Shailesh how are you? 27 echo returns void so its execution is faster than print and printf


print_r () puede imprimir el valor pero también si se pasa el segundo parámetro de indicador y es VERDADERO - devolverá el resultado impreso como una cadena y nada se enviará a la salida estándar. Acerca de var_dump. Si el depurador XDebug está instalado, los resultados de salida se formatearán de una manera mucho más legible y comprensible.


print y echo son más o menos lo mismo; ambos son construcciones de lenguaje que muestran cadenas. Las diferencias son sutiles: la print tiene un valor de retorno de 1, por lo que se puede usar en expresiones mientras que echo tiene un tipo de retorno de void ; echo puede tomar múltiples parámetros, aunque tal uso es raro; echo es ligeramente más rápido que print . (Personalmente, siempre uso echo , nunca print ).

var_dump imprime un volcado detallado de una variable, incluyendo su tipo y el tipo de cualquier subtema (si es una matriz o un objeto). print_r imprime una variable en una forma más legible para el ser humano: las cadenas no se citan, se omite la información del tipo, no se dan los tamaños de la matriz, etc.

var_dump suele ser más útil que print_r al depurar, según mi experiencia. Es particularmente útil cuando no sabes exactamente qué valores / tipos tienes en tus variables. Considere este programa de prueba:

$values = array(0, 0.0, false, ''''); var_dump($values); print_r ($values);

Con print_r no puede distinguir entre 0 y 0.0 , o false y '''' :

array(4) { [0]=> int(0) [1]=> float(0) [2]=> bool(false) [3]=> string(0) "" } Array ( [0] => 0 [1] => 0 [2] => [3] => )


print_r() se utiliza para imprimir la matriz en formato legible para humanos.


Echo :

Es declaración no una función Sin valor de retorno

No se requiere el paréntesis

No imprimir matriz

Impresión

Es una función real

Tipo de devolución 1

Requerido el paréntesis

No imprimir matriz

Print_r

Imprimir en formato legible para humanos

Cadena no en Citas

Información no detallada de tipo variable y todo

var_dump

Toda la información de volcado de variables como tipo de elemento y elemento secundario


eco

  • Emite una o más cadenas separadas por comas
  • Sin valor de retorno

    por ejemplo, echo "String 1", "String 2"

impresión

  • Emite solo una cadena
  • Devuelve 1 , por lo que se puede usar en una expresión

    por ejemplo, print "Hello"

    o, if ($expr && print "foo")

print_r ()

  • Da como resultado una representación legible por humanos de cualquier valor
  • Acepta no solo cadenas, sino otros tipos, incluidas matrices y objetos, formateándolos para que sean legibles
  • Útil cuando se depura
  • Puede devolver su salida como un valor de retorno (en lugar de eco) si se proporciona el segundo argumento opcional

var_dump ()

  • Da como resultado una representación legible por humanos de uno o más valores separados por comas
  • Acepta no solo cadenas, sino otros tipos, incluidas matrices y objetos, formateándolos para que sean legibles
  • Utiliza un formato de salida diferente para print_r() , por ejemplo, también imprime el tipo de valores
  • Útil cuando se depura
  • Sin valor de retorno

var_export ()

  • Da como resultado una representación legible por humanos y PHP ejecutable de cualquier valor
  • Acepta no solo cadenas, sino otros tipos, incluidas matrices y objetos, formateándolos para que sean legibles
  • Utiliza un formato de salida diferente para print_r() y var_dump() - ¡la salida resultante es un código PHP válido!
  • Útil cuando se depura
  • Puede devolver su salida como un valor de retorno (en lugar de eco) si se proporciona el segundo argumento opcional

Notas:

  • Aunque la print se puede usar en una expresión, recomiendo que la gente evite hacerlo, porque es mala para la legibilidad del código (y porque es poco probable que alguna vez sea útil). Las reglas de precedencia cuando interactúa con otros operadores también pueden ser confusas. Debido a esto, personalmente nunca tengo una razón para usarlo en lugar de echo .
  • Mientras que echo e print son construcciones de lenguaje, print_r() y var_dump() / var_export() son funciones regulares. No necesita paréntesis para adjuntar los argumentos para echo o print (y si los usa, se tratarán como lo harían en una expresión).
  • Si bien var_export() devuelve un código PHP válido que permite leer los valores más tarde, confiar en esto para el código de producción puede facilitar la introducción de vulnerabilidades de seguridad debido a la necesidad de usar eval() . Sería mejor usar un formato como JSON en su lugar para almacenar y leer valores. La velocidad será comparable.

echo

No tener tipo de devolución

print

Tener tipo de devolución

print_r()

Salidas con formato,