Я пытаюсь опубликовать многомерный массив на php, но мне не повезло.
Моего массив создан в JavaScript, который содержит массивы/объекты и в каждом массиве является соответствующим значением, например, как это делается
в этой функции:Как разобрать многомерный массив на PHP
function mouseUp(e) {
startX = 0;
startY = 0;
endX = e.pageX - this.offsetLeft;
endY = e.pageY - this.offsetTop;
width = 30;
height = 30;
filler = "#FFFFFF";
filler = "#FFFF00";
//send these vars over and push them into an array
addRect(startX, startY, width, height, filler, border);
} //end on mouse up
function addRect(startx, starty, endX, endY, color1, bc) {
newArray2 = [{
x: startx,
y: starty,
x1: endX,
y1: endY,
color: color1,
borderColor: bc
}];
arrayBig.push(newArray2);
//console.log(arrayBig);
}
Я использую эту функцию для нацеливания входного значения, как:
function send() {
var elem = document.getElementById("rectangle");
var myJSON = JSON.stringify(arrayBig);
elem.value = myJSON;
}
Мой HTML-форм заключается в следующем:
<form action="#" enctype="multipart/form-data" method="post" >
<input name="rectangle[][]" id="rectangle" type="hidden" class="valueFields" value=""/>
<input name="parseMe" type="hidden" value="layout" />
<input type="submit" name="button" id="submitButton" value="send" onclick="send()"/>
</form>
Теперь я имею полукомбинезоны BLE в этой части, присваивающей массив значения для варов в PHP здесь:
<?php
if (isset($_POST['parseMe'])) {
if ($_POST['parseMe'] == "layout") {
print_r($_POST['rectangle']);
$myObj= json_decode($POST['rectangle'],true);
echo $myObj['color'];
//how to assign each value to a variable here???
//$x = rectangle[0][0].color; //doesn't work
}
}
?>
Если кто-то может показать мне, как разобрать это правильно, я благодарю вас заранее.
В Javascript все, что мне нужно сделать, чтобы присвоить значение переменной var: c = arrayBig [0] [0] .color;
Но как мне сделать эту строку кода в PHP?
Также будет ли имя ввода выглядеть как name = "rectangle []" или name = "rectangle [] []"?
ОК как этот addRect (startX, startY, ширина, высота, filler, border); startX = 30; и startY = 3 и т. д. – james
Я использую только javascript и canvas для этого, но не css – james
, поэтому значения передаются в функцию addRect, которая толкает ее в массив. – james