Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Проблема в php!
Форумы портала PHP.SU » PHP » Напишите за меня, пожалуйста » Проблема в php!

Страниц (2): [1] 2 »
 

1. A320_Pilot - 13 Ноября, 2012 - 00:13:02 - перейти к сообщению
Всем доброй ночи!
Перейдём сразу к проблеме, есть файл aircraft.idb, в нём:
CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2. A318:132:31.44:34.10:122.6:25:12.51:3.70:3.95:4.14:39500 Kg:54500 Kg:68:0.78:0.82:3600:1828 m:24.210:12.000 m:PW(x2), CFM(x2), PW6000(x2), IAE V2500(x2):96-106 kN
  3. A319:156:33.84:34.10:122.6:25:11.76:3.70:3.95:4.14:40800 Kg:58500 Kg:75.5:0.78:0.82:4100:2164 m:24.210:12.000 m:PW(x2), CFM(x2), PW6000(x2), IAE V2500(x2):98-120 kN
  4. A320:180:37.57:34.10:122.6:25:11.76:3.70:3.95:4.14:42600 Kg:62500 Kg:78:0.78:0.82:3200:2090 m:24.210:12.000 m:PW(x2), CFM(x2), PW6000(x2), IAE V2500(x2):111-120 kN
  5. A321:220:44.51:34.10:122.6:25:11.76:3.70:3.95:4.14:48500 Kg:73800 Kg:93.5:0.78:0.82:3000:2560 m:24.050:12.000 m:PW(x2), CFM(x2), PW6000(x2), IAE V2500(x2):133-147 kN
  6.  

Также есть файл index.php:
CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2. <?php
  3. $var = explode(':',  file_get_contents('aircraft.idb'));
  4. foreach($var as $index=>$value){
  5. if($value=="A318:132:31.44:34.10:122.6:25:12.51:3.70:3.95:4.14:39500 Kg:54500 Kg:68:0.78:0.82:3600:1828 m:24.210:12.000 m:PW(x2), CFM(x2), PW6000(x2), IAE V2500(x2):96-106 kN"){
  6. echo "$value";}
  7. if($value=="A319:156:33.84:34.10:122.6:25:11.76:3.70:3.95:4.14:40800 Kg:58500 Kg:75.5:0.78:0.82:4100:2164 m:24.210:12.000 m:PW(x2), CFM(x2), PW6000(x2), IAE V2500(x2):98-120 kN"){
  8. echo "$value";}
  9. if($value=="A320:180:37.57:34.10:122.6:25:11.76:3.70:3.95:4.14:42600 Kg:62500 Kg:78:0.78:0.82:3200:2090 m:24.210:12.000 m:PW(x2), CFM(x2), PW6000(x2), IAE V2500(x2):111-120 kN"){
  10. echo "$value";}
  11. if($value=="A321:220:44.51:34.10:122.6:25:11.76:3.70:3.95:4.14:48500 Kg:73800 Kg:93.5:0.78:0.82:3000:2560 m:24.050:12.000 m:PW(x2), CFM(x2), PW6000(x2), IAE V2500(x2):133-147 kN"){
  12. echo "$value";}}
  13. ?>
  14.  

Но на экран ничё не выводится, в чём косяяк?
(Добавление)
Результат должен получится таким:
Чтобы из каждой строки бралось по одному значению!
Например из 1 строки число:1828 m
2 строка:2164 m
В файле aircraft.idb строк очень много!
Как бы из каждой строки нужно вытащить одно значение, ну или все сразу, а потом как то их вывести в таблицу html!
2. OrmaJever - 13 Ноября, 2012 - 00:17:26 - перейти к сообщению
A320_Pilot пишет:
$var = explode(':',  file_get_contents('aircraft.idb'));

А как вы понимаете эту строку? Я лично её понимаю так что получается текст из файла и делится по двоеточию (Улыбка Тоесть в масиве не будет ниодного двоеточия, будет только текст до и после него, а у вас в каждом условии сравнивается непонятно с какой строкой.
3. A320_Pilot - 13 Ноября, 2012 - 00:19:13 - перейти к сообщению
А как это правильно реализовать?
4. LIME - 13 Ноября, 2012 - 00:19:57 - перейти к сообщению
explode (PHP_EOL , file...
5. A320_Pilot - 13 Ноября, 2012 - 00:24:44 - перейти к сообщению
LIME пишет:
explode (PHP_EOL , file...

Не понял!
6. sKaa - 13 Ноября, 2012 - 00:28:48 - перейти к сообщению
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. $var = explode(PHP_EOL,  file_get_contents('aircraft.idb'));
  3. foreach($var as $index=>$value){
  4. ...
7. A320_Pilot - 13 Ноября, 2012 - 00:31:08 - перейти к сообщению
sKaa пишет:
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. $var = explode(PHP_EOL,  file_get_contents('aircraft.idb'));
  3. foreach($var as $index=>$value){
  4. ...

На экран всё равно ничё не выводит!
8. LIME - 13 Ноября, 2012 - 00:35:49 - перейти к сообщению
phpfaq.ru/debug
9. A320_Pilot - 13 Ноября, 2012 - 00:37:00 - перейти к сообщению
LIME пишет:
phpfaq.ru/debug

И что это?
(Добавление)
В логах никаких ошибок нет!
10. LIME - 13 Ноября, 2012 - 00:41:51 - перейти к сообщению
ндяяя
этот так просто не отстанет))
а ты почитай
попробуй разок сам
11. A320_Pilot - 13 Ноября, 2012 - 00:43:26 - перейти к сообщению
LIME пишет:
ндяяя
этот так просто не отстанет))
а ты почитай
попробуй разок сам

Чё пробовать то?
Ничё не получается!
Я и так читал!
12. caballero - 13 Ноября, 2012 - 00:51:08 - перейти к сообщению
читаешь по строкам через fgets
потом explode(':', ...
13. A320_Pilot - 13 Ноября, 2012 - 00:57:02 - перейти к сообщению
caballero пишет:
читаешь по строкам через fgets
потом explode(':', ...

Можно пример кода плз!
А то не выходит!
(Добавление)
Ну так поможете?
14. Panoptik - 13 Ноября, 2012 - 06:11:55 - перейти к сообщению
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. $var = file('aircraft.idb');
  3. foreach($var as $index=>$value){
  4. if($value=="A318:132:31.44:34.10:122.6:25:12.51:3.70:3.95:4.14:39500 Kg:54500 Kg:68:0.78:0.82:3600:1828 m:24.210:12.000 m:PW(x2), CFM(x2), PW6000(x2), IAE V2500(x2):96-106 kN"){
  5. echo "$value";}
  6. if($value=="A319:156:33.84:34.10:122.6:25:11.76:3.70:3.95:4.14:40800 Kg:58500 Kg:75.5:0.78:0.82:4100:2164 m:24.210:12.000 m:PW(x2), CFM(x2), PW6000(x2), IAE V2500(x2):98-120 kN"){
  7. echo "$value";}
  8. if($value=="A320:180:37.57:34.10:122.6:25:11.76:3.70:3.95:4.14:42600 Kg:62500 Kg:78:0.78:0.82:3200:2090 m:24.210:12.000 m:PW(x2), CFM(x2), PW6000(x2), IAE V2500(x2):111-120 kN"){
  9. echo "$value";}
  10. if($value=="A321:220:44.51:34.10:122.6:25:11.76:3.70:3.95:4.14:48500 Kg:73800 Kg:93.5:0.78:0.82:3000:2560 m:24.050:12.000 m:PW(x2), CFM(x2), PW6000(x2), IAE V2500(x2):133-147 kN"){
  11. echo "$value";}}
  12. ?>
  13.  
15. A320_Pilot - 13 Ноября, 2012 - 07:05:52 - перейти к сообщению
Спасибо,но теперь выводится только одна строка и всё подряд, как взять например строку А321 и вывести из неё только 12.000

 

Powered by ExBB FM 1.0 RC1