Join David Powers for an in-depth discussion in this video Overview of my solution, part of Code Clinic: PHP.
- This month's problem in Code Clinic can be broken down…into four simple tasks.…Inspect the file system to find the images,…extract the captions from the metadata…embedded in each image,…reorganize the files by moving them to a new directory…structure based on the first letter of the image's caption,…and display the results.…The first task is to find the images.…For the purposes of this exercise we're assuming…we don't know exactly where they are in the file system.…We're going to have to search each directory or folder…to find them.…
That calls for a recursive solution.…We can do recursion the hard way,…by creating a function like this.…The getImages function shown here takes a single argument,…the directory to be searched.…Internally it uses the scandir function to return an array…of the directories files and folders.…The array_diff function eliminates the dot files.…An irregular expression matches image filename extensions…and adds images to an array.…
Subdirectories are added to another array.…The second foreach loop inspects the subdirectories…
David introduces challenges and provides an overview of his solutions in PHP. Challenges include topics such as statistical analysis, searching directories for images, and accessing peripheral devices.
Visit other courses in the series to see how to solve the exact same challenges in languages like C#, C++, Java, Python, and Ruby.
Skill Level Intermediate
Q: I'm encountering script errors message with the prime_dates.php file used in the "Priming the date_record column" movie in this course. How can I resolve these errors?
A: To avoid script errors, use bindValue() instead of bindParam() in
Line 9 of the prime_dates.php file. You can also download the latest
copy of the exercise files, which corrects this issue for you. For a
more in-depth explanation of the difference between bindValue() and
bindParam(), check out the "Binding input and output values" video (http://www.lynda.com/PHP-
Q: Why can't I access the Lake Pend Orielle site (http://lpo.dt.navy.mil)?
A: The Lake Pend Orielle site is not accessible in some geographical areas. We have contacted the owner of the server to try to resolve this issue.
Q: I am unable to access the Lake Pend Oreille data from outside the U.S.
A: A static copy of this data is provided here for lynda.com members outside of the U.S
Problem One: Statistical Analysis
Problem Two: Image Analysis
Problem Three: Eight Queens
Problem Four: Accessing Peripherals
Problem Five: Recursion and Directories
Problem Six: Building the Web
- Mark as unwatched
- Mark all as unwatched
Are you sure you want to mark all the videos in this course as unwatched?
This will not affect your course history, your reports, or your certificates of completion for this course.Cancel
Take notes with your new membership!
Type in the entry box, then click Enter to save your note.
1:30Press on any video thumbnail to jump immediately to the timecode shown.
Notes are saved with you account but can also be exported as plain text, MS Word, PDF, Google Doc, or Evernote.