Learn how to use the iterators and data structures in the Standard PHP Library to traverse, filter, and sort data.
Overview
Syllabus
Introduction
- Welcome
- What you should know before watching this course
- Using the exercise files
- What is the Standard PHP Library?
- Introducing SPL iterators
- Using SPL iterators
- Inspecting single directories with DirectoryIterator
- Inspecting single directories with FilesystemIterator
- Inspecting directories recursively with RecursiveDirectoryIterator
- Getting information about files with SplFileInfo
- Working on text files with SplFileObject
- Using SplFileObject to convert a CSV to an array
- Exporting data to a download file with SplTempFileObject
- Filtering a directory with GlobIterator
- Using regular expressions to filter directories with RegexIterator
- Extracting data from XML with RegexIterator and SimpleXML
- Specifying a range of items with LimitIterator
- Creating a custom filter with CallbackFilterIterator
- Creating a recursive callback filter
- Extending FilterIterator to create a reusable filter
- Creating a custom filter with RecursiveFilterIterator
- Overriding the RecursiveFilterIterator constructor
- Using ParentIterator to find elements that have children
- Converting between arrays and iterators
- Filtering values from JSON
- Using multidimensional arrays with iterators
- Extending RecursiveIteratorIterator to build nested lists
- Combining iterators with AppendIterator
- Merging values from different iterators with MultipleIterator
- Creating a repeat sequence with InfiniteIterator
- Treating the final element differently with CachingIterator
- Using RecursiveCachingIterator with multidimensional structures
- Generating an ASCII graphic tree with RecursiveTreeIterator
- NoRewindIterator and EmptyIterator
- Doubly linked lists, stacks, and queues
- Sorting XML and JSON with SplDoublyLinkedList
- Using SplStack and SplQueue
- Understanding heaps
- SplMinHeap and SplMaxHeap
- Sorting XML and JSON with SplHeap
- Finding important information with SplPriorityQueue
- Keeping priority items in chronological order
- Speeding up array access with SplFixedArray
- Goodbye
Taught by
David Powers