What are some best practices for modifying array values in PHP without losing key-value pairs?

When modifying array values in PHP, it's important to ensure that key-value pairs are maintained. One common mistake is using functions like array_values() which re-index the array and remove keys. To avoid losing key-value pairs, you can directly modify the array values using their keys or use array_walk() to iterate over the array and make changes without affecting the keys.

// Example of modifying array values without losing key-value pairs
$array = ['key1' => 'value1', 'key2' => 'value2', 'key3' => 'value3'];

// Modify value of 'key2' without losing key-value pairs
$array['key2'] = 'new value';

// Print the modified array
print_r($array);