check the Online PHP Manual and notice that ONLY SOME ini_setting(…); can be set, the remainder must be set using php.ini .
Your script returned a false value for $ok indicating that the ini_setting(…); was not acceptable
<?php
declare(strict_types=1);
error_reporting(-1);
ini_set('display_errors', '1');
$aMems = [
'post_max_size' ,
'upload_max_filesize' ,
'max_file_uploads' ,
'max_execution_time' ,
'memory_limit' ,
];
echo '<!DOCTYPE HTML><html lang="en-gb"><head>'
. '<title>Title</title></head>'
. '<body><dl>';
foreach($aMems as $key => $vMem ):
$setting = ini_get($vMem); // ALL string values
echo '<dt>'
. 'php.ini - ORIGINAL ==> ini_set(<b>"'
. $vMem
. '"</b>, '
. print_r($setting, TRUE)
. '); </dd>';
for($i2=1; $i2<20; $i2+=8) :
$tmp = $i2*10; // NUMEZRIC 10..200
if(strpos((string) $setting, 'M') ):
$tmp .= 'M'; // 10..200
endif;
$modified = ini_set($vMem, (string) $tmp); // notice all string values
echo '<dd>';
$tmp = (string) $tmp;
if($modified):
echo '<b style="color:#0a0;"> NEW SETTING ==> </b>';
else:
echo '<b style="color:red;"> FAILED TO SET ==> </b>';
endif;
echo print_r($tmp, TRUE) .'</dd>';
endfor;
echo '<dd> <br> </dd>';
endforeach;
echo '</dl></body></html>';
Results:
Edit:
It might be worth investigating splitting the file into smaller chunks and uploading separately;
https://www.php.net/manual/en/function.str-split.php