эта строка перезаписывает массив - PullRequest
2 голосов
/ 07 сентября 2010

ОК, поэтому я создаю многомерный массив, и эта строка допускает в него только один элемент. Как я могу проверить, если

$related[$row_r['Category_name']][$row_r['name']]

больше 0, и если это так, не перезаписывайте значение и просто добавляйте его

while($row_r = mysql_fetch_assoc($result)){
  $related[$row_r['Category_name']][$row_r['name']] = $row_r; //this line

Ответы [ 2 ]

3 голосов
/ 07 сентября 2010

Возможно, вы ищете это?

while($row_r = mysql_fetch_assoc($result)){
    $related[$row_r['Category_name']][$row_r['name']][] = $row_r;
}
1 голос
/ 07 сентября 2010
$value=$related[$row_r['Category_name']][$row_r['name']];
if(is_int($value) && $value>0) {//if current value is a >0 integer
  $related[$row_r['Category_name']][$row_r['name']] = array($value, $new_value);//we combine the new value too, together with the previous one, into an array
} elseif(is_array($value)) {//if  it was already an array, we append the new element
  $related[$row_r['Category_name']][$row_r['name']][] = $new_value;
} else {//other wise (a 0 integer), we would assign the value.
  $related[$row_r['Category_name']][$row_r['name']] = $new_value;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...