Start learning with our library of video tutorials taught by experts. Get started
Viewers: in countries Watching now:
PHP is a popular, reliable programming language at the foundation of many smart, data-driven websites. This comprehensive course from Kevin Skoglund helps developers learn the basics of PHP (including variables, logical expressions, loops, and functions), understand how to connect PHP to a MySQL database, and gain experience developing a complete web application with site navigation, form validation, and a password-protected admin area. Kevin also covers the basic CRUD routines for updating a database, debugging techniques, and usable user interfaces. Along the way, he provides practical advice, offers examples of best practices, and demonstrates refactoring techniques to improve existing code.
In this movie I want us to talk about array functions. An there are a lot of functions for working with arrays, because arrays are super useful an we're going to use them in a lot a different context. And there's lots a things that we might want to do with them, and ways we want to manipulate that information. So we're going to look at a few of the most common ones, and then I'm going to show you how you can look up the rest of them. Let's start with let's create ourselves a new file for this. And let's make our basic .HTML file, Save As. We'll call this array_functions.php. Here we go, ten box/g, array functions.
So, to start with, I'm going to Paste in a numbers array, which is the same numbers that we were working with in the last two videos. But the difference is that I've jumbled them all around, they're not in the same order anymore. That's because one of the things that we're going to be looking at is how we can sort those numbers. Before we do that, want to look at a couple of other ones. The simpliest one of course is just that we can count those values. We can use count to tell us how many items are in the array. What's the size, what are the number of items it contains. There's max which will tell us the maximum value, and min to tell us the minimum value. That's very handy especially if we're working with max. And want to make sure that we take something that's always the maximum of several choices or the minimum of several choices.
Let's bring those up in a browser and take a look. Let's Save that and go back to Firefox, and, instead of associative arrays, we're now going to be looking at array functions. So, 6 values in there, the maximum value is 42, the minimum value is 4. As I said, we can also sort those values. Let me make this window a little bigger here. So I'm going to sort them and then right after I sort them, we'll use print_r to output it so we can see the result. So sort and then output it. And then rsort is for reverse sort, and we'll output the result of that.
Take a look at what each of those give us. So reload this page, so Sort and then Reverse sort. If you'd like you can put pre tags around those to make it easier to read, let's do that real quick, there we go. You can see that sort return them in ascending order while reverse sort return them descending order by value. Now there are rules if these aren't numbers as to how they get sorted. Obviously if you are sorting a bunch of strings, you sort them alphabetically by the first letter, then the second letter and so on.
If you were sorting an array that had a mixture of things, it would sort them for you. But the sort order might not be what you'd expect, because whether it sorts a letter before a number or a number before a letter is a little bit arbitrary. And you'd have to look that up in PHP to see which one it was going to do. So you typically wouldn't do it in that case, but it would go ahead and handle it for you. Notice one thing about sort, which is that it actually sorted the array in place. We didn't do any kind of assignment, we didn't have to say numbers equals a sorted version of that, right? It changed it in place, it's a destructive function. So, our old version, our old, unsorted version, doesn't exist anymore, right? It sorted them in place.
Another handy function is how we can turn an array, into a string. In other words, combine values together to get a string, and we can do that with implode. So what we do is we say what array we want is the second argument. The first argument is what the separator is between each of those elements. So here, I've said it's a space and an asterisk and a space. I'll save that, and you'll see what it looks like. Let's just do an echo on that so we can see it. And you'll see that it imploded it, now it's 41 star 23 star 16 star, right? It's not an array anymore, this is a string.
We could do get type on that and we would see that it was a string now. The opposite of Implode is Explode. So explode is going to take a string like num_string and every time that it finds this string, it's going to use it as a divider between the values. So every time it sees space astrik space, it's going to say alright. That's where I need to split this into a new object in the array. So we can see what it does here. Let's come back, Return, and you can see that here's the array.
It divided it back up into each of the values. It took this string, it said alright 42 is the first value. This is a separator, twenty three is the next value, this is a separator and so on. This is extremely useful when you're working with something like a comma separated list, right? So you have first name comma last name comma address comma city comma state comma zip and that sort of thing. Well you can break that up into an array by telling it to explode it, based on where the commas are. Another useful thing to be able to do, is to be able to tell whether or not something is in an array or not, does an array contain a value? So 15 in an array, echo, does the array contain the number 15 inside numbers, and it's going to return true or false.
Is 19 in the array? And it's going to return either true or false for whether 19 is inside the array numbers. So in_array is what allows us to do that, let's Save that. Try that out. So,15 in an array? Yes it is. True is represented by 1 here. 19 in an array? No, false. False is represented by having nothing there. Now, as I said, there are many, many functions for working with arrays. If you go to the php.net website. So, php.net/manual, and then your language, en/ref.array.php. Here's array functions, and here's a whole long list of them. You can see, I can just scroll down the list here. There are few that I think are esspecially interesting. There is array_keys, that returns just another array of only the keys from an accosiative array.
And then there's the same thing for array values down here. Returns just the values. So, if you have a key value pairs, you can just grab all the keys out of it, or all the values out of it. Array_push is an interesting one that allows you to push an element onto the end of an array. Array_pop does the opposite. It takes an element off the end of the array. Array-shift is what you would use to put an element onto the front of an array, and array_unshift is what you would use to take it off of the beginning of an array. Array_unique will make sure that all of the items are unique in the array, it takes out any duplicates. There's array_search up here, that searches the array for a given value and returns the corresponding key if it finds it.
So it's a value search through your array. And then array_random is also nice, array_rand, underscore rand. This can take one or more random entries out of an array. So each one of those you can click through, you can look for the documentation on it, you can surf around in these. If you're working with an array, and you're not sure how to accomplish what you want, this page may provide the answers that you're looking for.
Find answers to the most frequently asked questions about PHP with MySQL Essential Training.
Here are the FAQs that matched your search "":
Sorry, there are no matches for your search ""—to search again, type in another word or phrase and click search.
Access exercise files from a button right under the course name.
Search within course videos and transcripts, and jump right to the results.
Remove icons showing you already watched videos if you want to start over.
Make the video wide, narrow, full-screen, or pop the player out of the page into its own window.