I was able to hack the latest installer to work with PHP 7 and MySQLi.
In case anyone needs that I share what I did below.
First, I added mysqli into the install.php.
I just copied over the existing mysql section and changed mysql to mysqli and replaced mysql_get_server_info with smf_db_get_server_info:
'mysqli' => array(
'name' => 'MySQLi',
'version' => '4.0.18',
'version_check' => 'return min(smf_db_get_server_info(), mysqli_get_client_info());',
'supported' => function_exists('mysqli_connect'),
'default_user' => 'mysql.default_user',
'default_password' => 'mysql.default_password',
'default_host' => 'mysql.default_host',
'default_port' => 'mysql.default_port',
'utf8_support' => true,
'utf8_version' => '4.1.0',
'utf8_version_check' => 'return smf_db_get_server_info();',
'utf8_default' => false,
'utf8_required' => false,
'alter_support' => true,
'validate_prefix' => create_function('&$value', '
$value = preg_replace(\'~[^A-Za-z0-9_\$]~\', \'\', $value);
return true;
'),
),
I created a copy of install_2-0.mysql.sql as install_2-0.mysqli.sql
I took
tinoest's MySQLi mod and copy the 4 PHP files from it into the installer Sources folder.
Finally, I changed "mysql" in Settings.php to "mysqli"
I saw a deprecated warning, but otherwise 2.0.12 installed and works without any issue so far on PHP 7 using MySQLi.