П О Р Т А Л                            
С Е Т Е В Ы Х                          
П Р О Е К Т О В                        
  
                                                 
Главная

О проекте

Web-мастеру
     HTML & JavaScript
     SSI
     Perl
     PHP
     XML & XSLT
     Unix Shell

MySQL

Безопасность

Хостинг

Другое







Самое читаемое:

Учебник PHP - "Для Чайника".
Просмотров 27571 раз(а).

Иллюстрированный самоучитель по созданию сайтов.
Просмотров 9144 раз(а).

Учебник HTML.
Просмотров 15828 раз(а).

Руководство по PHP5.
Просмотров 7919 раз(а).

Хостинг через призму DNS.
Просмотров 11648 раз(а).

Подборка текстов стандартных документов.
Просмотров 12462 раз(а).

Учебник PHP - Самоучитель
Просмотров 8423 раз(а).

Документация на MySQL (учебник & справочное руководство)
Просмотров 6215 раз(а).

Внешние атаки...
Просмотров 5383 раз(а).

Учебник PHP.
Просмотров 6749 раз(а).

SSI в примерах.
Просмотров 3914 раз(а).






 
 

Программирование на Perl

Вызов open()

Много программистов открывают файл просто используя open(FILE,"$filename") || .... Мы уже видели опасность такого кода. Чтобы уменшить риск, указывайте режим открытия:

  • open(FILE,"<$filename") || ... только для чтения;
  • open(FILE,">$filename") || ... только для записи
Не открывайте свои файлы, не указывая режим.

Перед доступом к файлу рекомендуется проверить его существование. Это не защитит от проблем, связанных с условием перехвата, описаных в предыдущей статье, однако обойдет ловушки вроде команд с аргументами.

if ( -e $filename ) { ... }

Начиная с Perl 5.6 появился новый синтаксис для open() : open(ФАЙЛОВЫЙ ДЕСКРИПТОР,РЕЖИМ,СПИСОК). С режимом '<' файл открывается для чтения, с '>' - файл урезается или создается по необходимости, а затем открывается для записи. Появляются новые интересные режимы для общения с другими процессами. Если режим указан как '|-' или '-|', аргумент СПИСОК интерпретируется как команда, которая расположена после или до символа канала соответственно.

До Perl 5.6 и трехаргументной функции open() некоторые люди использовали команду sysopen().

[ Назад ] [ Содержание ] [ Вперед ]



 



Copyright © 2005-2007 Project.Net.Ru


Магазин лицензионного ПО файл лицензий lic nod32 на сайте с доставкой по России.