Does PHP interpreter loads first php.ini it finds (according to its search algorithm) and stops. Or does it load entire php.ini hierarchy and merges the settings?
So, if I need to overwrite single setting for a single web site - do I need to specify ALL values, or do I only need to specify values that are different from "higher-level" php.ini?
Only one file gets loaded and parsed. Check out the source code. It basically builds php_ini_scanned_path
and then zend_parse_ini_string
s it. There's only one call to zend_parse_ini_string
and one call to php_init_config
.