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.SU » » Вопросы новичков » Что это??? ".="

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

1. ViTVetal - 05 Сентября, 2011 - 19:14:49 - перейти к сообщению
Есть файл. Содержимое его такое:

7 C++
1 Fort
2 PHP
3 JavaScript
4 ASP.NET
10 Assembler
5 Java
6 Perl
8 Pascal
9 Fortran

Необходимо произвести лексикографическую сортировку файла.

PHP:
скопировать код в буфер обмена
  1. <?
  2. $arr=file("./lang.txt");
  3. foreach ($arr as $v)
  4. {
  5. $arr1=explode(" ", trim($v));
  6. $finish[$arr1[0]]=$arr1[1];
  7. }
  8.  
  9. ksort($finish);
  10.  
  11. $f=fopen("./lang.txt", "wt") or die("Ошибка файла");
  12. for ($i=1; $i<(count($finish)+1); $i++)
  13. {
  14. $str.=$i." ".$finish[$i]."\n";
  15. }
  16.  
  17. fwrite($f, $str);
  18. fclose($f);
  19. ?>


Все работает, но только при услови если вместо равно (в 14 строке), стоит ".=". В чем "фишка" и для чего вообще следует применять ".="? Растерялся
2. LIME - 05 Сентября, 2011 - 19:21:07 - перейти к сообщению
$a=$a.$b;
$a.=$b;
аналогичные строки только 2я короткая запись
понятно?
$a=$a+5000;
$a+=5000;
для наглядности с числами
3. ViTVetal - 05 Сентября, 2011 - 19:24:05 - перейти к сообщению
спасибо! Улыбка
(Добавление)
То есть мы добавляем к пустой строке " $i." ".$finish[$i]."\n" "
А если использовать "==" - это не будет ошибкой?
4. КЫР - 05 Сентября, 2011 - 20:58:16 - перейти к сообщению
ViTVetal
== - операция сравнения, возвращает true или false и не изменяет никаких значений

 

Powered by ExBB FM 1.0 RC1