A more simplified version of the method that creates subdirectories:
function path_put_contents($filePath, $contents, $flags = 0) {
if (! is_dir($dir = implode('/', explode('/', $filePath, -1))))
mkdir($dir, 0777, true);
file_put_contents($filePath, $contents, $flags);
}