This is a small tutorial on how to print out an array in PHP.
As a developer, you will probably have to deal with arrays on a daily basis. Some of them will be simple and straight forward, whereas others will be multidimensional “nightmares” that contain different data types (we’re talking about objects and arrays inside arrays).
To print out and debug a PHP array, you can do two things. You can:
If you use print_r by itself, you wll probably get a badly-formatted mess of characters on your screen (if it’s a big array, it will be completely unreadable). However, if you do your print_r inside a <pre> tag, you will get a much nicer display:
<?php $myArray = array(1, 2, 3, 'example' => 7); echo '<pre>'; print_r($myArray); echo '</pre>';
If you run the code snippet above, you’ll see the array is printed out on to the screen and that proper spacing and newlines are used:
OK, but what if you want to see the data types that are in the array? i.e. Is that element an integer or a string? Well, that’s where the function var_dump can come in handy:
<?php //A simple PHP array. $myArray = array(1, 2, 3, 'example' => 7); //Print it out with var_dump. var_dump($myArray);
If you have a debugger such as Xdebug installed on your local development machine, then the formatted output of the array will look something like this:
As you can see, this gives us a lot of information about the structure of our array. It tells us how many elements are in it and it also tells us what type of variables they are!
If you were interested in this article, you might also be interested in printing out an array with recursion.