Як з JS передати асоціативний масив в PHP
В JS не існує асоціативного масиву! Але є чарівний спосіб це виправити
щоб цей асоціативний масив передати в PHP
І так спочатку формуємо сам масив JS
//Параметри - ЗМІННІ які відсилаємо в JSON
//Параметри - ЗМІННІ які відсилаємо в JSON
let url_img_gets = btoa(url_img_get);
let del2 = '"'+del+'"';
let url2 = '"'+url+'"';
let url_img_gets2 = '"'+url_img_gets+'"';
const jsonarr = {"FIdPackageKey":del2, "FIdKodPunkta":url2, "Letter":url_img_gets2};
imghttp.send(JSON.stringify(jsonarr));
Далі приймаємо цей масив в PHP:
/*=ARDILLA-CMS©=========================╗
║ ==📃== Функція Отримує гівностроку з JS і робить з неї РНР масив
╚=========== SeriazArrJs ===============╝*/
function SeriazArrJs($img, $class='WRITEFILE'){
//Сеаріалізуэмо отриманий масив
$arr_seriaz = serialize($img);
// Забираємо лишні символи від JS з масиву
$healthy = array(';s:4:"\""}";', 'a:1:', '"\"', '\""', '}";s:0:"";');
$yummy = array('', '', '"', '"', '');
$newphrase = str_replace($healthy, $yummy, $arr_seriaz);
$newphrase = preg_replace("/^{(.{0,16}){/", '{', $newphrase);
// Перетворюємо JSON в масив
$arr_result = array_values(json_decode($newphrase, true));
return $arr_result;
}
Готово!