- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
<?
$text = @file("MySql/base123/reg/$log.dat");
$udata = explode(":||:", $text[0]);
$udata[100] = round($udata[100] + 1);
$text = $udata[0] .':||:'. $udata[1] .':||:'. $udata[2] .':||:'. $udata[3] .':||:'. $udata[4] .':||:'. $udata[5] .':||:'. $udata[6] .':||:'. $udata[7] .':||:'. $udata[8] .':||:'. $udata[9] .':||:'. $udata[10] .':||:'. $udata[11] .':||:'. $udata[12] .':||:'. $udata[13] .':||:'. $udata[14] .':||:'. $udata[15] .':||:'. $udata[16] .':||:'. $udata[17] .':||:'. $udata[18] .':||:'. $udata[19] .':||:'. $udata[20] .':||:'. $udata[21] .':||:'. $udata[22] .':||:'. $udata[23] .':||:'. $udata[24] .':||:'. $udata[25] .':||:'. $udata[26] .':||:'. $udata[27] .':||:'. $udata[28] .':||:'. $udata[29] .':||:'. $udata[30] .':||:'. $udata[31] .':||:'. $udata[32] .':||:'. $udata[33] .':||:'. $udata[34] .':||:'. $udata[35] .':||:'. $udata[36] .':||:'. $udata[37] .':||:'. $udata[38] .':||:'. $udata[39] .':||:'. $udata[40] .':||:'. $udata[41] .':||:'. $udata[42] .':||:'. $udata[43] .':||:'. $udata[44] .':||:'. $udata[45] .':||:'. $udata[46] .':||:'. $udata[47] .':||:'. $udata[48] .':||:'. $udata[49] .':||:'. $udata[50] .':||:'. $udata[51] .':||:'. $udata[52] .':||:'. $udata[53] .':||:'. $udata[54] .':||:'. $udata[55] .':||:'. $udata[56] .':||:'. $udata[57] .':||:'. $udata[58] .':||:'. $udata[59] .':||:'. $udata[60] .':||:'. $udata[61] .':||:'. $udata[62] .':||:'. $udata[63] .':||:'. $udata[64] .':||:'. $udata[65] .':||:'. $udata[66] .':||:'. $udata[67] .':||:'. $udata[68] .':||:'. $udata[69] .':||:'. $udata[70] .':||:'. $udata[71] .':||:'. $udata[72] .':||:'. $udata[73] .':||:'. $udata[74] .':||:'. $udata[75] .':||:'. $udata[76] .':||:'. $udata[77] .':||:'. $udata[78] .':||:'. $udata[79] .':||:'. $udata[80] .':||:'. $udata[81] .':||:'. $udata[82] .':||:'. $udata[83] .':||:'. $udata[84] .':||:'. $udata[85] .':||:'. $udata[86] .':||:'. $udata[87] .':||:'. $udata[88] .':||:'. $udata[89] .':||:'. $udata[90] .':||:'. $udata[91] .':||:'. $udata[92] .':||:'. $udata[93] .':||:'. $udata[94] .':||:'. $udata[95] .':||:'. $udata[96] .':||:'. $udata[97] .':||:'. $udata[98] .':||:'. $udata[99] .':||:'. $udata[100] .':||:';
$fp = fopen("MySql/base123/reg/$log.dat", "a+");
flock($fp, LOCK_EX);
ftruncate($fp, 0);
fputs($fp, "$text");
fflush($fp);
flock($fp, LOCK_UN);
fclose($fp);
Попался скрипт браузерной игры. Автор - Bishop какой то. Это просто залежи позитива. Второй день ржунимагу.
7ion 12.02.2011 18:07 # 0
Nerd 12.02.2011 18:13 # 0
Spider 12.02.2011 21:19 # 0
> implode? нет, первый раз слышу
eth0 13.02.2011 17:56 # 0
twin 12.02.2011 18:14 # 0
istem 14.02.2011 00:56 # 0
wmmorgun 14.02.2011 11:31 # 0
istem 14.02.2011 17:34 # 0
wmmorgun 14.02.2011 17:38 # 0
01. read
07. lock
09. write
11. unlock
нету там между ними блокировок ;-)
istem 14.02.2011 18:15 # 0
"file_get_contents и file_put_contents" - открывают и закрывают файл только во время (и на время) своего выполнения. Между использованием этих двух функций можно делать с файлом что угодно.
Куда, в таком случае подеваются данные отправленные из другого процесса?
wmmorgun 14.02.2011 18:22 # 0
В каком месте это видно?
Я прекрасно понимаю как работают "file_get_contents и file_put_contents". В оригинале написано тоже самое, никаких блокировок между чтением и записью.
twin 14.02.2011 18:28 # 0
А вообще там весь скрипт - один большой анекдот. ))
wmmorgun 14.02.2011 18:38 # 0
Причём начиная с идеи
istem 14.02.2011 22:07 # 0
Хотя если посмотреть на это с другой стороны, возможно стояла, как бы, задача о манипуляциях + сохранении некой информации в бардовскую БД.
Автор возможно столкнулся уже с подобной проблемкой (потеря архиважной информации), и, как бы, решил это дело - блокировкой файлов. Потом появилось всякое пятое-десятое - и всякие ftruncate/fflush...
--
А код, да, всё равно говно...
ZX_Spectrum 14.02.2011 23:07 # 0
если нужно об этом думать, то file_get(put)_contents - вообще не вариант (если брать только эти функции).
istem 14.02.2011 23:15 # 0
ZX_Spectrum 14.02.2011 23:49 # 0
istem 15.02.2011 00:02 # 0
ZX_Spectrum 15.02.2011 10:14 # 0
Lure Of Chaos 15.02.2011 16:45 # 0
istem 15.02.2011 22:27 # 0
Lure Of Chaos 15.02.2011 23:57 # 0
Мистер Хэнки 12.02.2011 20:18 # 0
Lure Of Chaos 12.02.2011 20:36 # 0
Spider 12.02.2011 21:21 # +1
— это фэйл
> зачем вообще так делать?
— так делать не надо :)
twin 12.02.2011 20:40 # 0
Spider 12.02.2011 21:22 # +2
Для полного счастья надо было сделать такой: [:]|||[:]