Добавление массива в цикл For - PullRequest
0 голосов
/ 09 марта 2012

У меня есть цикл, который перебирает данные, и я пытаюсь добиться, чтобы для каждого цикла массив добавлялся к другому массиву, прежде чем он будет возвращен.

Вот что я имею до сих пор -

$response = array();
$response["CorrelationId"] = $correlationId;

Этот код находится за пределами цикла, так как я хочу только один раз вернуть "CorrelationId" ... Это все работает нормально ... сейчас я полагаю!

foreach ($products as $value){
            $pid = mysql_escape_string($value['ProductId']);
            $dname = mysql_real_escape_string($value['departmentName']);
            $cname = mysql_real_escape_string($value['categoryName']);
            $pname = mysql_real_escape_string($value['productName']);

            //Insert Product data into DB
            $insert_product = "SQL Goes Here";
            $insert_result = mysql_query($insert_product);
            if(mysql_insert_id() >  0){
                $response["Messages"] = array("$pid Has been added.");
            }

        }
        return $response;

Все этоЭто достижение до сих пор заключается в добавлении последнего цикла в массив.Если я отправлю 2 цикла данных в цикл, он будет иметь только последний элемент в массиве ...

Я что-то упустил здесь очень простое?

Все, что я хочу, если я гдеЧтобы отправить две части данных, нужно вернуть CorrelationId и 2 ["Messages"].

Спасибо

Ответы [ 2 ]

2 голосов
/ 09 марта 2012

Изменение:


$response["Messages"] = "$pid Has been added.";
//To
$response["Messages"][] = "$pid Has been added.";

1 голос
/ 09 марта 2012

Это потому, что вы переопределяете $response["Messages"].Вы должны сделать (внутри цикла)

 $response["Messages"][] ="$pid Has been added.";

и вне цикла

 $response["Messages"] = array();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...