What are some best practices for handling SQL queries with PHP arrays?

When handling SQL queries with PHP arrays, it is important to properly escape and sanitize user input to prevent SQL injection attacks. One best practice is to use prepared statements with parameterized queries to separate SQL logic from user input. Additionally, it is recommended to validate and sanitize input data before constructing SQL queries to avoid potential security vulnerabilities.

// Example of using prepared statements with parameterized queries to handle SQL queries with PHP arrays

// Establish a database connection
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";

$conn = new mysqli($servername, $username, $password, $dbname);

// Check connection
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}

// Prepare a SQL query using a prepared statement
$stmt = $conn->prepare("SELECT * FROM users WHERE username = ?");
$stmt->bind_param("s", $username);

// Set parameter values and execute the query
$username = "john_doe";
$stmt->execute();

// Bind the result set to variables
$stmt->bind_result($id, $username, $email);

// Fetch and display the results
while ($stmt->fetch()) {
    echo "ID: " . $id . " - Username: " . $username . " - Email: " . $email . "<br>";
}

// Close the statement and connection
$stmt->close();
$conn->close();