|--- This looks alot like how an email is formated.
Content-Type: multipart/form-data; boundary=---------------------------25578952812662351891242608872
-- You will have to be read to detremine how the document is seperated and ends.
boundary= is the key
---------------------------25578952812662351891242608872 is the value.
-- Each record boundary value may have a random value or is hard coded, reguardless you will need to read it as it will seperate the documents various sections.
Content-Disposition: form-data; name="123456789"; filename="listData.csv"
-- This looks like the header to the data.
email@example.com,John Smith,07798564352,Brightonsarah.firstname.lastname@example.org,Sarah Jones,0779646352,Londonbob.email@example.com,Bob Samuel,0775354542,Cardiff
-- and of course this is the data. As a csv file goes it is missing the first line which the column names but you can work around that.
-- I would save the entire post as a text file and then open that with the file function which will return an array.
-- You can then step through the file looking for the Content-Type: text/plain and then move to the next row as this is where the content data starts.
-- Then use the explode function to make a array of the individual lines of data...
for here you can do whatever you need with the data.
Others may have a better approach but this will work.