What are potential pitfalls when generating files dynamically in PHP?

One potential pitfall when generating files dynamically in PHP is not properly sanitizing user input, which can lead to security vulnerabilities such as code injection or file manipulation. To mitigate this risk, always validate and sanitize user input before using it to create or write files.

// Example of sanitizing user input before generating a file
$userInput = $_POST['user_input']; // Assuming user input is received via POST method
$sanitizedInput = filter_var($userInput, FILTER_SANITIZE_STRING);

$filename = 'generated_file.txt';
$fileContent = $sanitizedInput;

file_put_contents($filename, $fileContent);