Не сте регистриран! Регистрирайте се БЕЗПЛАТНО, за да използвате услугите на сайта!

   Рубрики
 
 
 
 

 Форуми
» SEO и оптимизация
» Всичко за PHP и Perl
» Всичко за C, C++ и .NET
» Всичко за Java и JSP
» Всичко за SQL и MySQL
» Всичко за XHTML и CSS
» Презентация на сайтове
 Линийте във файл
  1. Линийте във файл
Inventive
     
Автор  Inventive (05.02.2005 10:51)  съобщение до автора
Погледнат  2404 пъти  добави към любими
Оценка  добави коментар
Гласове  2  изпрати на приятел
Коментари  (2)  абонирай се за PHP
    Страница 1 / 1

 



Модификация на линия

CODE
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
<?php
function
ModifyLine($line, $content, $fileName, $newFileName = false)
{
   
if(is_file($fileName)) $arr = file($fileName); else return "Missing filename: ".$fileName." !";

   
if(($line<1) || ($line>count($arr)))
    {
       
return "Param1 or Param2 out of range !";
   
}

    --
$line;

   
if(!$newFileName) $newFileName = $fileName;

   
if ($content[strlen($content)-1] != "n") $content .= "n";

   
$arr[$line] = $content;

   
$fp = fopen($newFileName, "w");
   
if(!$fp) return "Unable to write the result to file: ".$newFileName." !";
   
fwrite($fp, implode("",$arr));
   
fclose($fp);

   
return "Operation completed successful !";
}

?>

Преместване на линия
CODE
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
function MoveLine($oldPosition, $newPosition, $fileName, $newFileName = false)
{
   
if(is_file($fileName)) $arr = file($fileName); else return "Missing filename: ".$fileName." !";

   
if(($oldPosition<1) || ($oldPosition>count($arr)) || ($newPosition<1) || ($newPosition>count($arr)))
    {
       
return "Param1 or Param2 out of range !";
   
}

    --
$oldPosition;--$newPosition;

   
if(!$newFileName) $newFileName = $fileName;

   
$value2move = array_splice($arr, $oldPosition, 1);

   
array_splice($arr, $newPosition, 0, $value2move);

   
foreach($arr as $key => $value)
    {

        //
if it does not end on n - make it end on n
       
if ($value[strlen($value)-1] != "n") $arr[$key] .= "n";
   
}
to 'optimize' this
   
$fp = fopen($newFileName, "w");
   
if(!$fp) return "Unable to write the result to file: ".$newFileName." !";
   
fwrite($fp, implode("",$arr));
   
fclose($fp);

   
return "Operation completed successful !";
}

echo MoveLine(4,1, "lines.txt", "output.txt");
?>

Изтриване на линия
CODE
1
2
3
4
5
6
7
8
9
10
11
<?php
function remove
($linenum) {
$source = 'source.txt';
$arr = file($source);
unset($arr[$linenum]);
$f = fopen($source,'w');
fwrite($f,implode('',$arr));
fclose($f);
}
remove("2"); // Iztriva liniq 2
?>

Прочитане на линия
CODE
1
2
3
4
5
6
7
8
<?php
function
readline($file,$line) {
$f = file($file);
$stoinost = $f[$line];
return $stoinost;
}
echo readline("file.txt","2");
?>



   


Ключови думи: PHP програмиране линия модификация файл


Още уроци от тази рубрика


 
  • Подобни теми от myLinks
 

 За автора: Inventive  
На 14 години съм и се казвам Светослав Генов. Занимавам се с PHP и MySQL предимно. Също така съм и mIRC скирптер. Имам опит и с Adobe Photoshop.
   
 1 посетител чете този урок (0 потребители и 1 гост)  
Активни потребители: ---
   
  

Еmail  
 

В php.net не съм видял за модифициране на линия и преместване на линия ... а за критиките аз друго от теб не съм видял и май няма да видя.

  Inventive на 21.02.2005 19:09

Прегледах само от горе отгоре скрипта....В крайна сметка прегледах го защото това беше единствения начин да разбера изобщо за какво е? Съжелявам, че критикувам толкова, но този имам чувството, че си го плеснал за бройка!?! Не е трудно да влезеш в php.net и да изкопираш всичките им скриптове със същия успех! Липсват коментари изцяло, а както споменах трябваше да прегледам целия скрипт за да разбера за какво се използва, от заглавието му и началния коментар мога да си направя доста заключения. В случая моите бяха грешни...

  LazCorp на 17.02.2005 17:29

 

 
  • Интересно от Софтуер
 



IT-PLACE.NET © 2004 - 2008