Javascript-форум (https://javascript.ru/forum/)
-   Серверные языки и технологии (https://javascript.ru/forum/server/)
-   -   php xls поправьте скрипт (https://javascript.ru/forum/server/47775-php-xls-popravte-skript.html)

arahmanov 06.06.2014 20:28

php xls поправьте скрипт
 
Загружаю прайс, состоящий из 5 столбцов


Кол-во Артикул Наименование Цена Производитель

поставили задачу , чтобы меняя столбцы местами все грузилось на свои места. ни чего умнее не придумал :
$proverka1 = addslashes(trim($data->sheets[0]["cells"][1][1]));
        $proverka2 = addslashes(trim($data->sheets[0]["cells"][1][2]));
        $proverka3 = addslashes(trim($data->sheets[0]["cells"][1][3]));
        $proverka4 = addslashes(trim($data->sheets[0]["cells"][1][4]));
        $proverka5 = addslashes(trim($data->sheets[0]["cells"][1][5]));


for ($i=2; $i<=$data->sheets[0]["numRows"]; $i++){
       

if ($proverka1 =="Производитель"){ $cell1 = addslashes(trim($data->sheets[0]["cells"][$i][1]));};
if ($proverka1 =="Артикул "){ $cell2 = addslashes(trim($data->sheets[0]["cells"][$i][1]));};
if ($proverka1 =="Наименование "){ $cell3 = addslashes(trim($data->sheets[0]["cells"][$i][1]));};
if ($proverka1 =="Цена"){ $cell4 = addslashes(trim($data->sheets[0]["cells"][$i][1]));};
if ($proverka1 =="Кол-во"){ $cell5 = addslashes(trim($data->sheets[0]["cells"][$i][1]));};



if ($proverka2 =="Производитель"){ $cell1 = addslashes(trim($data->sheets[0]["cells"][$i][2]));};
if ($proverka2 =="Артикул "){ $cell2 = addslashes(trim($data->sheets[0]["cells"][$i][2]));};
if ($proverka2 =="Наименование "){ $cell3 = addslashes(trim($data->sheets[0]["cells"][$i][2]));};
if ($proverka2 =="Цена"){ $cell4 = addslashes(trim($data->sheets[0]["cells"][$i][2]));};
if ($proverka2 =="Кол-во"){ $cell5 = addslashes(trim($data->sheets[0]["cells"][$i][2]));};

if ($proverka3 =="Производитель"){ $cell1 = addslashes(trim($data->sheets[0]["cells"][$i][3]));};
if ($proverka3 =="Артикул "){ $cell2 = addslashes(trim($data->sheets[0]["cells"][$i][3]));};
if ($proverka3 =="Наименование "){ $cell3 = addslashes(trim($data->sheets[0]["cells"][$i][3]));};
if ($proverka3 =="Цена"){ $cell4 = addslashes(trim($data->sheets[0]["cells"][$i][3]));};
if ($proverka3 =="Кол-во"){ $cell5 = addslashes(trim($data->sheets[0]["cells"][$i][3]));};

if ($proverka4 =="Производитель"){ $cell1 = addslashes(trim($data->sheets[0]["cells"][$i][4]));};
if ($proverka4 =="Артикул "){ $cell2 = addslashes(trim($data->sheets[0]["cells"][$i][4]));};
if ($proverka4 =="Наименование "){ $cell3 = addslashes(trim($data->sheets[0]["cells"][$i][4]));};
if ($proverka4 =="Цена"){ $cell4 = addslashes(trim($data->sheets[0]["cells"][$i][4]));};
if ($proverka4 =="Кол-во"){ $cell5 = addslashes(trim($data->sheets[0]["cells"][$i][4]));};

if ($proverka5 =="Производитель"){ $cell1 = addslashes(trim($data->sheets[0]["cells"][$i][5]));};
if ($proverka5 =="Артикул "){ $cell2 = addslashes(trim($data->sheets[0]["cells"][$i][5]));};
if ($proverka5 =="Наименование "){ $cell3 = addslashes(trim($data->sheets[0]["cells"][$i][5]));};
if ($proverka5 =="Цена"){ $cell4 = addslashes(trim($data->sheets[0]["cells"][$i][5]));};
if ($proverka5 =="Кол-во"){ $cell5 = addslashes(trim($data->sheets[0]["cells"][$i][5]));};


хочу привести к более логическому виду, чтобы можно было в цикле как то все это дело проверить, а в дальнейшем и поиск по названию скажем на 10-15 столбцов

Duda.Ml1986@gmail.com 12.06.2014 14:18

ничего не ясно, можно по русски что нужно сделать? и
эту хрень убрать бы addslashes(trim, а то не читаемо

А как прайс выглядит? можно глянуть.
и какие столбы менять местами? где что?

Vlasenko Fedor 12.06.2014 22:46

Цитата:

Сообщение от Duda.Ml1986@gmail.com
эту хрень убрать бы addslashes(trim, а то не читаемо

кроме того как нечитаемо, так и к массивам то не применимо
Цитата:

Сообщение от arahmanov
if ($proverka1 =="Производитель")

для данной конструкции лучше использовать
switch-case
http://www.php.su/learnphp/cs/?sc


Часовой пояс GMT +3, время: 14:21.