PHP arrays allow storing of multiple values under a single variable name. They can store different data types like numbers, strings, and nested arrays. Arrays are useful for organizing related data, dynamically growing/shrinking in size, and efficiently accessing elements through indexes or keys. The two main types are indexed arrays using numeric indexes, and associative arrays using string keys. While arrays provide flexibility, they can also consume more memory and have performance limitations for large datasets.