2015-06-18 4 views
-2

нужна помощь выяснить это, ив получил некоторый код, как такработы с массивами PHP нужен совет

$q= $conn->query("SELECT * FROM table"); 

    while($array2[] = $q->fetch_object()); 
    array_pop($array2); 



if(isset($array2[0]->DATE)) 
{ 
    $date0 = $array2[0]->DATE; 
}else{ 
    $date0 = ''; 
} 
if(isset($array2[1]->DATE)) 
{ 
    $date1 = $array2[1]->DATE; 
}else{ 
    $date1 = ''; 
} 
$data =('DATE1'= $date0,'DATE2'= $date1) 

так что вы можете увидеть, что проблема в том, повторяя материал снова и снова, его ужасно, я уверен, theres чистый способ сделать это, но я не уверен, как, я попытался использовать цикл for, но если 1 значение не было установлено, все другие значения получат '', установленный для них, чтобы он не работал ... что мне нужно для завершения что увеличивает значение 'DATE#', равное вхождениям в $array2

так, что если $array2 позвонил ed от $array[0] to $array[4], то внутри массива $data я бы закончил тем, что имел DATE0 = $date0,DATE1 = $date1,DATE2 = $date2,DATE3 = $date3,DATE4 = $date4,DATE5 = $date5, надеюсь, таким образом, если, например, array2[7] не существует, он обыкновенно бросает ошибку, потому что внутри $data не существует ... надеюсь, что все, что имеет смысл, я не могу найти надлежащий способ описать это.

ответ

0

Я не получить то, что вы делаете с с в то время как «петля» и array_pop, но для другой проблемы, вы можете использовать простой foreach:

foreach ($array2 as $arr) 
{ 
    $date[] = (isset($arr->DATE)) ? $arr->DATE : ''; 
} 

Это поможет вам массив со всеми датами, хранящимися в соответствующем ключе от 0 до x.

+1

Я принимаю его, а не то, что я искал, потому что заметил, я не могу написать то, что хочу, правильно, мои предложения потеряли смысл (не родной английский), но это привело меня к какой-то другой поправке, в которой я нуждался. – nonaxanon

+0

You Добро пожаловать. Если вам по-прежнему нужна помощь, просто попробуйте изменить свой вопрос или спросить новый! – baao

Смежные вопросы