Работа с информацией в файле - Visavi.net
https://visavi.net/
RSS - Visavi.nethttps://visavi.net/assets/img/images/logo_small.pngRSS - Visavi.net
https://visavi.net/
[email protected] (admin)[email protected] (admin)Mon, 23 Dec 2024 03:11:00 +0300Vantuz, благодарю!
https://visavi.net/topics/13621/246936
Работа с информацией в файле negativeFri, 17 Sep 2010 01:57:38 +0400Сообщенияhttps://visavi.net/topics/13621/246936<pre class="prettyprint"><?php
function replace_lines($files, $lines, $text){
if (file_exists($files)){
if ($lines!==""){
if ($text!=""){
$file = file($files);
$fp = fopen($files, "a+");
flock ($fp,LOCK_EX);
ftruncate ($fp,0);
foreach($file as $key=>$val){
if ($lines==$key) {
fputs($fp,"$text\r\n");
} else {
fputs($fp,$val);
}
}
fflush($fp);
flock ($fp,LOCK_UN);
fclose($fp);
}}}
}
</pre>
https://visavi.net/topics/13621/246623
Работа с информацией в файле Вантуз-менThu, 16 Sep 2010 16:43:00 +0400Сообщенияhttps://visavi.net/topics/13621/2466239, 10, неосилил
https://visavi.net/topics/13621/246615
Работа с информацией в файле KOZZThu, 16 Sep 2010 16:03:54 +0400Сообщенияhttps://visavi.net/topics/13621/246615Получается буд-то он перезаписывает буфер обмена новой информацией и штампует потом уже с обновлением, хотя по идее он не должен этого делать. <br>
<br>
А вот это из-за чего вообще не понятно: <br>
<br>
1: 0|0|0|0|0|0|0|0|0|0 <br>
2: 0|0|0|0|0|0|0|1|0|0 <br>
3: 0|0|0|0|0|0|0|1|0|0 <br>
4: 0|0|0|0|0|0|0|1|0|0 <br>
5: 0|0|0|0|0|0|0|1|0|0 <br>
<br>
$stroka=3; <br>
$line_data[7]=""; <br>
<br>
$text=$line_data[0].'|'.$line_data[1].'|'.$line_data[2].'|'.$line_data[3].'|'.$line_data[4].'|'.$line_data[5].'|'.$line_data[6].'|'.$line_data[7].'|'.$line_data[8].'|'.$line_data[9].'|'; <br>
<br>
Записываем $text если в лупе $i достигает значения $stroka, остальное в файл из буфера. <br>
По идее строка 3 должна принять такой вид: <br>
3: 0|0|0|0|0|0|0||0|0 <br>
а она как была так и остается <br>
3: 0|0|0|0|0|0|0|1|0|0 <br>
<br>
а если к примеру $stroka будет равна 2. То после записи станет <br>
<br>
1: 0|0|0|0|0|0|0|0|0|0 <br>
2: 0|0|0|0|0|0|0||0|0 <br>
3: 0|0|0|0|0|0|0||0|0 <br>
4: 0|0|0|0|0|0|0||0|0 <br>
5: 0|0|0|0|0|0|0||0|0 <br>
<br>
Вместе со второй строкой он на "" скинет все следом идущие. <br>
<br>
Затем меняем $stroka на 3 а $line_data[7]=1; <br>
Получаем: <br>
1: 0|0|0|0|0|0|0|0|0|0 <br>
2: 0|0|0|0|0|0|0||0|0 <br>
3: 0|0|0|0|0|0|0|1|0|0 <br>
4: 0|0|0|0|0|0|0|1|0|0 <br>
5: 0|0|0|0|0|0|0|1|0|0
https://visavi.net/topics/13621/246608
Работа с информацией в файле negativeThu, 16 Sep 2010 15:55:46 +0400Сообщенияhttps://visavi.net/topics/13621/246608Да, согласен. Это один из вариантов. Это без разницы это только начало. Проблема то в конце выражения всего. Допустим я укажу $ex[7]=1; как потом записать измененную информацию в файл что бы он оставил все как было а изменил только ex[7] в нужной строке
https://visavi.net/topics/13621/246217
Работа с информацией в файле negativeWed, 15 Sep 2010 19:16:21 +0400Сообщенияhttps://visavi.net/topics/13621/2462176, так это и есть для каждой строки, т.к. foreach пробегает по каждой строке
https://visavi.net/topics/13621/245585
Работа с информацией в файле KOZZTue, 14 Sep 2010 10:10:18 +0400Сообщенияhttps://visavi.net/topics/13621/245585Наглядно:<br>
<br>
0 строка: 0|1|2|3|4|5|6|7|8<br>
1 строка: 0|1|2|3|4|5|6|7|8<br>
2 строка: 0|1|2|3|4|5|6|7|8<br>
3 строка: 0|1|2|3|4|5|6|7|8<br>
4 строка: 0|1|2|3|4|5|6|7|8<br>
<br>
Их может быть много. в 1-й строке меняю в 7 ячейке информацию. в 0-й как и положенно остается старая информация, а вот помимо 1-й строки в строках 2,3,4 в 7-й ячейке тоже вносятся изменения, хотя они там не нужны. Только в первой строке надо. Это пример
https://visavi.net/topics/13621/244840
Работа с информацией в файле negativeSun, 12 Sep 2010 20:45:52 +0400Сообщенияhttps://visavi.net/topics/13621/244840МеталлоgетектоР eGo это если вся инфа в строке 0 записана. Тут по иному все. Тут каждая строка содержит свои ||
https://visavi.net/topics/13621/244830
Работа с информацией в файле negativeSun, 12 Sep 2010 20:37:09 +0400Сообщенияhttps://visavi.net/topics/13621/244830Приведенный пример перезаписывает да то что нужно в нужной ячейке, но он потом эту же информацию перезаписывает во все ячейки в строках идущих после строки $stroka то есть он взял измененную инфу о 7-й ячейке и потом во все строки в 7-ю ячейку штампует имененную информацию, а нужно только в той, в которой требуется
https://visavi.net/topics/13621/244825
Работа с информацией в файле negativeSun, 12 Sep 2010 20:34:42 +0400Сообщенияhttps://visavi.net/topics/13621/244825delete
https://visavi.net/topics/13621/244824
Работа с информацией в файле УдаленныйSun, 12 Sep 2010 20:32:55 +0400Сообщенияhttps://visavi.net/topics/13621/244824<pre class="prettyprint">
$file = file("primer.dat");
$primer_data=explode("|",$file[$stroka]);
for ($i=0;$i< sizeof($file);$i++) {
if ($stroka==$i){
$primer_data[7]=1;
$text=$primer_data[0].'|'.$primer_data[1].'|'.$primer_data[2].'|'.$primer_data[3].'|'.$primer_data[4].'|'.$primer_data[5].'|'.$primer_data[6].'|'.$primer_data[7].'|'.$primer_data[8].'|';
}
}
$text=no_br($text);
$fp=fopen("primer.dat","w");
flock ($fp,LOCK_EX);
ftruncate ($fp,0);
for ($i=0;$i< sizeof($file);$i++){
if ($stroka==$i){
fputs($fp,"$text\r\n");
}else{
fputs($fp2,$file[$i]);
}
fflush ($fp);
flock ($fp,LOCK_UN);
fclose($fp);
unset($text);
}
</pre>
https://visavi.net/topics/13621/244823
Работа с информацией в файле negativeSun, 12 Sep 2010 20:32:35 +0400Сообщенияhttps://visavi.net/topics/13621/244823$a = file('file.txt');<br>
foreach($a as $str){<br>
$ex = explode('|',$str);<br>
}<br>
а дальше делай под свои нужды
https://visavi.net/topics/13621/244822
Работа с информацией в файле KOZZSun, 12 Sep 2010 20:30:41 +0400Сообщенияhttps://visavi.net/topics/13621/244822Всем привет! Столкнулся с такой неразрешимой для меня проблемой. Есть файл, в нем несколько строк, строка разбита на ячейки с разделителем |<br>
Сейчас пример выложу.
https://visavi.net/topics/13621/244820
Работа с информацией в файле negativeSun, 12 Sep 2010 20:26:45 +0400Сообщенияhttps://visavi.net/topics/13621/244820