No tienes acceso a esta clase

隆Contin煤a aprendiendo! 脷nete y comienza a potenciar tu carrera

Debugging y comentarios

10/24
Recursos

Debugging es cuando inspeccionamos el contenido de nuestro c贸digo o de una variable para verificar que valor tiene en alg煤n punto de nuestro programa. Con respecto a los comentarios, son l铆neas de texto que podemos dejar en el c贸digo y que el lenguaje (PHP) va a ignorar cuando se ejecuten.

Debugging en PHP

Nos ofrece 2 opciones como lo son las funciones var_dump() y print_r(). Veamos un ejemplo:

<?php
// Un arreglo o array de datos:
$personas = [
    "Carlos" => 22,
    "Mr. Michi" => 15,
    "Juan" => 65
];

Se observa un arreglo o array con el cual podemos almacenar m谩s de un dato. Si queremos observar en consola el contenido y detalles sobre esta variable, podemos usar var_dump():

<?php
$personas = [
    "Carlos" => 22,
    "Mr. Michi" => 15,
    "Juan" => 65
];

var_dump( $personas );

// Hacemos un salto de l铆nea para una mejor visibilidad del c贸digo
echo "\n";

En la terminal, cuando ejecutemos nuestro archivo PHP, podremos ver algo como esto:

Output del uso de var_dump en un arreglo (array)

Ahora usando print_r():

<?php
$personas = [
    "Carlos" => 22,
    "Mr. Michi" => 15,
    "Juan" => 65
];

print_r(  $personas );

// Hacemos un salto de l铆nea para una mejor visibilidad del c贸digo
echo "\n";

Este m茅todo nos brinda la informaci贸n m谩s ordenada y limpia de leer, sin embargo, no nos da mayores detalles a diferencia de var_dump():

Output del m茅todo print_r() en un arreglo

Dicho esto, es necesario saber que ninguno m茅todo es mejor que otro, ya que va a depender del contexto en el que los necesites.

Formas de comentar tu c贸digo

Los comentarios nos pueden servir mucho para dejar notas acerca del funcionamiento del c贸digo, pues es com煤n que los programadores lo olviden con el tiempo.

Comentarios de una sola l铆nea

Los comentarios de este estilo solo comentan hasta el final de la l铆nea o del bloque actual de c贸digo de PHP. Se pueden hacer de 2 formas: con // o un #

<?php
// Esto es un comentario
echo 'Buenos D铆as \n';
# Otra forma de comentar en una l铆nea
echo 'Buenas Noches \n';

Comentarios multil铆nea

Te permite comentar en m谩s de una l铆nea. Para ello, el contenido del comentario debe estar entre estos dos pares de s铆mbolos: /* y */:

<?php
/*
Puedo comentar cualquieeeer cosa,
abajo puedo seguir escribiendo m谩s cosas 
UwU
*/

Contribuci贸n creada por: Mart铆n 脕lvarez.

Aportes 26

Preguntas 4

Ordenar por:

驴Quieres ver m谩s aportes, preguntas y respuestas de la comunidad?

o inicia sesi贸n.

Resumen:

  • var_dump: nos permite inspeccionar la variable y nos da informaci贸n acerca de ella. Por ejemplo, en un array nos dice el n煤mero de elementos del array y el tipo que es cada elemento.

    $personas = [
        "Carlos" => 22,
        "Mr. Michi" => 15,
        "Juan" => 65
    ];
    
    //
    var_dump( $personas );
    

    Salida:

    array(3) {
    ["Carlos"]=>
    int(22)
    ["Mr. Michi"]=>
    int(15)
    ["Juan"]=>
    int(65)
    }
    
  • print_r: nos imprime la variable de una forma m谩s limpia y con menos informacion.

    $personas = [
        "Carlos" => 22,
        "Mr. Michi" => 15,
        "Juan" => 65
    ];
    
    //
    print_r( $personas );
    

    Salida:

    Array
    (
        [Carlos] => 22
        [Mr. Michi] => 15
        [Juan] => 65
    )
    
  • // y # : nos sirve para dejar comentarios de una linea.

    // Comentario de una linea
    # Otra forma de hace un comentario de una linea
    
  • /* comentario de varias lineas */: de esta forma podemos dejar comentarios de varias lineas.

    /* Esto es un 
    comentario multilinea */
    

Spoiler alert, RetaxMaster har谩 un curso de Debugging con Xdebug y tal vez junto a PHP Storm 馃槃

Desde el analizador del trace, observadores, break points, etc. Todo para trabajar de manera profesional con grandes Frameworks.

Comparaci贸n de funciones 馃槂

Este profe explica muy bien cada idea, mas profesores como el en platzi

Usa siempre comentarios, tu yo del futuro te lo agradecer谩.

Me gustan los profes que hacenb qeu te enganches con los temas, vine a qui para reforzar uno que otro conocimeinto y creo que vere todo el curso 馃槃

Los comentarios son fundamentales, aunque creamos que no olvidamos nada, al volver a ver un c贸digo despu茅s de mucho tiempo, es muy dif铆cil recordar todo.

Para hacer un breve resumen:

  • var_dump: Nos permite inspeccionar la variable, lo que contiene esta. A pesar de que ilustra m谩s data, su desventaja es que esta data anda desordenada.
  • print_r: Tiene la misma tarea que es inspeccionar una variable, con la diferencia que nos trae menos data, pero su presentaci贸n es una forma m谩s ordenada

Por 煤ltimo, para concluir con el teme de los comentarios, es una pr谩ctica bastante importante comentar donde inicias un ciclo, tu zona de variables, tu zona de funciones, breve explicaci贸n de cada una. Para un futuro poder reutilizar el c贸digo y saber qu茅 es lo que tiene o incluso que otro colega tuyo pueda leer el c贸digo y entender donde est谩 ubicado

Les recomiendo el editor de texto Sublime Text 3, este puede personalizarse, asignar claves de teclado para todo, adem谩s tiene muchos paquetes que te ayudaran en lo que estes haciendo, solo es investigar los mejores paquetes y que funcion cumplen鈥
Saludos.

Si que es muy com煤n, despu茅s de unos meses ver un c贸digo y no acordarte por qu茅 lo hiciste como lo hiciste, qu茅 hace o c贸mo funciona, me ha pasado muchas veces

Debuggin

var_dump y print_r son funciones de depuraci贸n en PHP que se utilizan para mostrar informaci贸n sobre una variable o un arreglo durante la etapa de desarrollo del c贸digo. Ambas ayudan a los desarrolladores a comprender mejor la estructura y los valores de las variables, lo que es esencial para la depuraci贸n de errores y el desarrollo eficiente del c贸digo.

La funci贸n var_dump muestra informaci贸n detallada sobre una variable, incluyendo su tipo, tama帽o y valores. Esta funci贸n es 煤til para obtener una visi贸n general completa de una variable, especialmente cuando se trabaja con variables complejas como arreglos multidimensionales y objetos. La salida de var_dump es menos legible que la de print_r, pero proporciona informaci贸n m谩s detallada.

Por otro lado, la funci贸n print_r es m谩s legible que var_dump, pero proporciona menos informaci贸n detallada. Esta funci贸n muestra el contenido de una variable o un arreglo de una manera f谩cil de leer, lo que la hace ideal para validar lo que hay dentro de una variable. Sin embargo, no proporciona informaci贸n detallada sobre los tipos de datos y los tama帽os de las variables.

En el siguiente ejemplo, se tiene un arreglo llamado $players que contiene los nombres y las edades de algunos jugadores. Al utilizar var_dump($players), se mostrar谩 una salida que incluye detalles sobre el tipo de datos de las variables, as铆 como informaci贸n sobre los valores espec铆ficos:

$players = [
    "Haaland" => 22,
    "Cristiano" => 21,
    "Messi" => 22
];
var_dump($players); // Informacion a detalle

La salida de var_dump para este arreglo ser铆a la siguiente:

array(3) {
  ["Haaland"]=>
  int(22)
  ["Cristiano"]=>
  int(21)
  ["Messi"]=>
  int(22)
}

Por otro lado, al utilizar print_r($players), se mostrar谩 una salida que muestra los valores de los elementos del arreglo de una manera f谩cil de leer:

print_r($players); // Validar que hay dentro de una variable, es mas legible pero con poca info

La salida de print_r para este arreglo ser铆a la siguiente:

Array
(
    [Haaland] => 22
    [Cristiano] => 21
    [Messi] => 22
)

En resumen, var_dump y print_r son funciones 煤tiles en PHP para depurar c贸digo y obtener informaci贸n sobre variables y arreglos. var_dump proporciona informaci贸n detallada sobre una variable, pero es menos legible, mientras que print_r es f谩cil de leer pero proporciona menos informaci贸n detallada.

En ocasiones no sabes por qu茅 NO funciona tu c贸digo鈥 pero en ocasiones no sabes por qu茅 SI funciona tu c贸digo XD

Jamas me habia divertido tanto al programar. Excelente Profe!

Otra forma de hacer comentarios es: 1. Escribes cualquier cosa. 2. Seleccionas lo que escribiste. 3. Ctrl+K. 4. Ctrl+C. Y listo. Puede ser mas trabajo. Pero simplemente es otra manera de hacer comentarios.

Yo suelo usar otra manera de comentar que, al menos en los IDE de JetBrains, me resalta el comentario a煤n m谩s que los dem谩s:

Se escribe /** y con dar enter, autom谩ticamente el IDE cierra el comentario y te crea una nueva l铆nea comentada (Por cada vez que presiones enter)

/**
 *  COMENTARIOS
 *  MULTILINEA
 *  RESALTADO
 */

hola, el se llama felipe giraldo
no, el se llama Carlos florez
no, el se llama Carlos florez
El resultado de 2 x 5 = 20
array(2) {
[鈥渃arlos鈥漖=>
int(22)
[鈥渇elipe鈥漖=>
int(24)
}
Array
(
[carlos] => 22
[felipe] => 24
)

Creo que el debugging es un tema m谩s avanzado, ya que ni siquiera nos ha ense帽ado a crear variables

Para comentar una o varias lineas de c贸digo en Visual Studio Code usen el atajo CTRL + K + C.

Esa declaraci贸n de arreglos se me figuro mucho a los objetos en JS aunque estuve tratando de ponerle un tipo de dato que no fuera num茅rico y me daba error. Interesante ese tema ahora que lo veamos

Acostumbrado a JavaScript deje una coma despues ultimo valor, y descubri que tambien lo acepta.
Awasome

$personas= [
    "Fernando" => 52,
    "Carlos" => 15,
    "Juan" => 65,
];

Depende mucho del contexto, pero en mi opinion viene mejor utilizar var_dump()

$personas = [
    "Victor" => 18,
    "Lazaro" => 18,
    "Diego" => 18
];
var_dump($personas);
echo "\n";

print_r($personas);
echo "\n";

# Este es un comentario
/*
 * Holaaaaa, este es un comentario de
 * multiples lineas
 * xd
 */

Este lenguaje es muy parecido a C

o es mi impresi贸n?

Ene sta clase aprendimos 2 herramientas importantes a la hora de escribir codigo:

  1. Visualizar los datos de nuestras variables de una forma mas detallada.
  2. Utilizar comentarios y mejorar la legibilidad y entendimiento de nuestro codigo.

Tenemos el siguiente c贸digo que muestra un arreglo:

<?php

$personas = [
    "Carlos" => 22, 
    "Hanier" => 15,
    "Juan" => 65,
];

print_r( $personas );

echo "\n";

Una implementaci贸n con print_r en consola se ver铆a as铆:

Array
(
    [Carlos] => 22
    [Hanier] => 15
    [Juan] => 65
)

Y una implementaci贸n con var_dump en consola se ver铆a as铆:

array(3) {
  ["Carlos"]=>
  int(22)
  ["Hanier"]=>
  int(15)
  ["Juan"]=>
  int(65)
}

Al implementarlo con var_dump recordar modificar la l铆nea y dejarla as铆:

var_dump( $personas );