Why does petroleum have a rainbow-like reflection in the sunlight?

When the light strikes a thin film of a fluid(such as petrol) in which light moves slower than air, there is an initial reflection off of the surface. Some of the light is transmitted into the fluid and it reflects off the bottom and then finally travels back out.

These waves take slightly longer to reflect due to the travel of a very short distance through the oil, they are now slightly out of phase with the initial reflection, creating a rainbow of interference

And this phenomenon is known as thin-film interference.