Эта тема на forum.dklab.ru


Kalmir: массив или как сделать перебор через for используя foreach?
Народ подскажите в чем проблема есть такая фиша что некторые КЛЮЧИ после foreach, когда я делаю if найти в массиве $new_arrart_in какое-то совподенние типа STRENGTH он мне при echo выводит данные типа 1 потом 1 потом 22 потом 22 (а вот последней 22 не должно быть откуда она я так и не понел как будто массив повтаряется уже из неоткуда). Причем в поле for делал "print_r($new_arrart_in);" и он выводит все правельно без всяких последних 22 в конце массива (тобишь выводит 1 потом 1 потом 22 и все как нуно).
1) Перебор массива идет через [0]$name1=>$name2;[1]$name1=>$name2 [0]$name1=>$name2;[1]$name1=>$name2 и так далее.
2) $id_arts - это постоянка она меняется так как положенно но она не сравнима далее указзаными в коде подсчетами.
3) Может я вопще через одно место написал весь этот код и есть намного легче код который умеет открывать файл считывать его перебирать растовляя каждый ключь диля их знаком = и потом поиском, if-если $name1="привет вася" else-то вывести $name="привет петя"

Надеюсь я подробно и правельно объяснил.


for($iqd=0;$iqd<count(@$id_arts);$iqd++)
{
@$artifact_info="api.php?function=artifact_info&artifact_id=".@$id_arts[$iqd]."";
$file = file($artifact_info);
for($art_in=0;$art_in<count($file);$art_in++)
{
@list($arrart_in['info_left'],$arrart_in['info_right']) = explode("=",$file[$art_in]);
$new_arrart_in[$art_in] = $arrart_in;
}
foreach ($new_arrart_in as $id_art_in => $art_infos)
{
if($art_infos['info_left']=="STRENGTH") {$info_strength[]=$art_infos['info_right'];} //сила
if($art_infos['info_left']=="DEXTERITY") {$info_dexterity[]=$art_infos['info_right'];} //Ловкость
if($art_infos['info_left']=="INTUITION") {$info_intuition[]=$art_infos['info_right'];} //интуиция
if($art_infos['info_left']=="HEALTH") {$info_health[]=$art_infos['info_right'];} //Конституция
if($art_infos['info_left']=="WILL") {$info_will[]=$art_infos['info_right'];} //Воля
if($art_infos['info_left']=="EVADE") {$info_evade[]=$art_infos['info_right'];} //уворот
if($art_infos['info_left']=="ANTIEVADE") {$info_antievade[]=$art_infos['info_right'];} //антиуворот
if($art_infos['info_left']=="KRIT") {$info_krit[]=$art_infos['info_right'];} //Крит
if($art_infos['info_left']=="ANTIKRIT") {$info_antikrit[]=$art_infos['info_right'];} //антикрит
if($art_infos['info_left']=="HIT") {$info_hit[]=$art_infos['info_right'];} //Дамаг
if($art_infos['info_left']=="SPEED") {$info_speed[]=$art_infos['info_right'];} //Скорость
if($art_infos['info_left']=="PASSENGERS") {$info_passengers[]=$art_infos['info_right'];} //Пассажиров
if($art_infos['info_left']=="MAX_HP") {$info_max_hp[]=$art_infos['info_right'];} //+НР чару от шмота
if($art_infos['info_left']=="A_HEAD") {$info_a_head[]=$art_infos['info_right'];} //Защита головы
if($art_infos['info_left']=="A_CHEST") {$info_a_chest[]=$art_infos['info_right'];} //Защита корпус
if($art_infos['info_left']=="A_GROIN") {$info_a_groin[]=$art_infos['info_right'];} //Защита пах
if($art_infos['info_left']=="A_LEGS") {$info_a_legs[]=$art_infos['info_right'];} //Защита ног
}
}

Kalmir:
Упс не в то топ сори ошибся...
Maus:
Kalmir
1) табулируйте код
2) пользуйтесь подсветкой кода
3) приведите содержимое хотя бы одного файла (api.php?function=artifact_info&artifact_id=0 , например) (или приаттачьте этот файл - но тогда Вам придется зарегистрироваться на форуме)
4) ждем, пока модераторы перенесут это куда-нить в более приличное место, а потом продолжаем....
Ant:
Перенесено из форума: Склад готовых решений :: PHP.
Перенесено в форум: Разное :: PHP.

Эта тема на forum.dklab.ru