Для меня это не эффективно вообще. Я использую IDE, таким образом, в альбомном режиме у меня есть боковые панели, чтобы переместиться по коду, переместиться по проекту и т.д.
Вам, вероятно, потребуется назвать свою переменную "параметр3 []" ради PHP:
$.get('/controller/method/',
{
"parameter1": "value1",
"parameter2": "value2",
"parameter3[]": ["a","b","c"]
},
function(data) {
if (data) {
}
else {
}
});
$ _ GET ["параметр3"] будет отображаться в PHP как
Array
(
[0] => "a"
[1] => "b"
[2] => "c"
)
Итак, во-первых, я думаю, вы смешиваете синтаксис JavaScript и PHP. Вероятно, это то, что вы хотели сделать, чтобы продемонстрировать передаваемые массивы:
$.get('foo.htm',
{
parameter1: 'value1',
parameter2: 'value2',
parameter3: [1, 2, 3],
parameter4: {'one': 1, 'two': 2, 'three': 3}
},
function(data) {
alert(data);
});
Как ни странно, JQuery не нравится вложенный объект. Он создает такую строку запроса:
foo.htm?parameter1=value1
¶meter2=value2
¶meter3=1
¶meter3=2
¶meter3=3
¶meter4=%5Bobject+Object%5D
Для передачи сложных объектов PHP взад и вперед я рекомендую сериализовать ваш объект JavaScript с помощью метода JSON stringify и десериализовать его на бэкэнде с помощью json_decode .
Кроме того, похоже, вы используете некую структуру MVC. Если это CodeIgniter, и у вас проблемы с GET, подумайте об использовании этого вспомогательного метода postJSON:
$.postJSON = function(url, data, callback) {
$.post(url, data, callback, "json");
};
Я уже был на этом пути раньше. Присоедините свой массив с запятой (или любой другой символ, который лучше всего подходит для вашего сценария) и отправьте его как один параметр ...
var arr = [5, "x", 25];
var parms = {
parameter1: "value1",
parameter2: arr.join(",");
}
А на стороне сервера ваша пост-переменная "параметр2" будет иметь вид 5 , x, 25
Это простое решение для обеих сторон провода.
Можно отправить любой объект JSON через команду post ... даже на контроллер MVC. Сложная часть - это получение данных ... которые вам, возможно, придется десериализовать вручную на сервере (либо в контроллере, либо с помощью фильтра JSON.