Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Блокировка файлов
 
 автор: dfmb   (09.08.2007 в 12:58)   письмо автору
 
 

Здравствуйте!
Меня мучает один вопрос:

Допустим у нас есть три файла: fone.php, ftwo.php и data.inc.

Содержание fone.php:
<?php
$file- fopen("data.inc","r");//------ блок №1 ------
flock($file,LOCK_SH);
while(!feof($file))
{
$content[]= fgets($file);
}
flock($file,LOCK_UN);
fclose($file);

for($i=0;$i<=100000;$i++)//------ блок №2 -------
{
$txt= "{$i},";
}

$file- fopen("data.inc","w");//------ блок №3 ------
flock($file,LOCK_EX);
for($i=0;$i<=count($content);$i++)
{
fputs($file,$content[$i]);
}
flock($file,LOCK_UN);
fclose($file);
?>


Содержание ftwo.php:
<?php
$file- fopen("data.inc","w");//------ блок №1 ------
flock($file,LOCK_EX);
fputs($file,"Второй варриант ответа");
flock($file,LOCK_UN);
fclose($file);
?>

Содержание data.inc до работы сценариев:
Первый варриант ответа

Вопрос:
Если выполниться файл ftwo.php во время работы блока №2 файла fone.php, что будет содержать файл data.inc?

   
 
 автор: Unkind   (09.08.2007 в 13:42)   письмо автору
 
   для: dfmb   (09.08.2007 в 12:58)
 

Блок №2 первого скрипта никак не связан с файлом data.inc. Он не заблокирован. Следовательно, после работы ftwo.php будет выполнятся блок №3 первого скрипта.
В итоге в файл запишется содержание массива $content.

Но это, конечно, при условии, что Вы устраните синтаксические ошибки, иначе в итоге обоих скриптов будет Parse error и файл никто вообще не тронет.

   
 
 автор: dfmb   (09.08.2007 в 13:46)   письмо автору
 
   для: Unkind   (09.08.2007 в 13:42)
 

А как сделать, что бы файл ftwo.php открыл файл data.inc только после того, как закончится выполнение файла fone.php?

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования