2016-02-09 2 views
-4

Я код, как этотКак получить индекс из массива в PHP?

for($ctr=0; $ctr < 4; $ctr++) { 
    $messages["message"] = $ctr; 
    array_push($response["messages"], $messages); 
} 

Я хочу, чтобы получить message, который содержит значение 2. Как это сделать в PHP?

+1

петлю, проверить, сделано. –

ответ

0

Вы должны использовать поиск массива в этом случае.

for($ctr=0; $ctr < 4; $ctr++) { 
    //$messages["message"] = $ctr; 
    array_push($response, $ctr); 
} 
echo array_search('2', $response); 

поиск массива даст вам индекс массива, значение которого равно 2.

+1

, за исключением того, что в $ response нет значения «2» (если он не добавил его перед кодом, который он разместил :) – Gavriel

+0

На самом деле я просто отвечаю на вопрос, не отлаживая код для ошибок. Я вижу вопрос и даю ответ. Спасибо за ваше внимание. @ Gavriel –

+0

возможно, но это, вероятно, не его намерение, по крайней мере, из кода, который он опубликовал (хотя, возможно, OP не знал, как написать то, что он хочет) – Gavriel

1
for($ctr=0; $ctr < 4; $ctr++) { 
    $messages["message"] = $ctr; 
    array_push($response["messages"], $messages); 
} 

function mysearch($val) { 
    global $response; 
    for ($i = 0; $i < count($response["messages"]); $i++) { 
     if ($response["messages"][$i]["message"] === $val) { 
      return $i; 
     } 
    } 
    return -1; 
} 

echo mysearch(2); // will print the index, or -1 if not found 
Смежные вопросы