What are some best practices for debugging PHP code that involves database queries and date filtering?

Issue: When debugging PHP code that involves database queries and date filtering, it is important to ensure that the date format used in the query matches the format stored in the database. Additionally, using prepared statements can help prevent SQL injection attacks and ensure the query is executed safely.

// Example code snippet for debugging PHP code with database queries and date filtering

// Assuming $start_date and $end_date are user input dates
$start_date = date('Y-m-d', strtotime($_POST['start_date']));
$end_date = date('Y-m-d', strtotime($_POST['end_date']));

// Connect to the database
$pdo = new PDO('mysql:host=localhost;dbname=my_database', 'username', 'password');

// Prepare and execute the query with date filtering
$stmt = $pdo->prepare("SELECT * FROM my_table WHERE date BETWEEN :start_date AND :end_date");
$stmt->bindParam(':start_date', $start_date);
$stmt->bindParam(':end_date', $end_date);
$stmt->execute();

// Fetch results
$results = $stmt->fetchAll(PDO::FETCH_ASSOC);

// Debugging output
var_dump($results);