What are some alternative methods or functions in PHP for splitting the contents of a text file into arrays, especially when dealing with complex text structures or multi-dimensional arrays?

When dealing with complex text structures or multi-dimensional arrays in PHP, the `explode()` function may not be sufficient for splitting the contents of a text file into arrays. In such cases, using regular expressions or parsing techniques can be more effective. Regular expressions allow for more complex pattern matching, while parsing techniques like `preg_match_all()` can extract specific parts of the text file based on defined rules.

// Example using regular expressions to split text file contents into arrays
$file_contents = file_get_contents('example.txt');
$pattern = '/^(\d+),(\w+),(\d+)$/m'; // Assuming each line in the text file has a format like "123,abc,456"
preg_match_all($pattern, $file_contents, $matches, PREG_SET_ORDER);

foreach ($matches as $match) {
    $data[] = [
        'number' => $match[1],
        'string' => $match[2],
        'another_number' => $match[3]
    ];
}

print_r($data);