Класс для работы с Ini файлами

grigori
при чем тут, кого-то ты там обучишь, вопрос был объясняешь ли ты заказчику о том что таких магазинов полно. забей!
 
PHP:
public function set($path, $value)
    {
       //.....
        if ($this->autosave)
            $this->save();
        ....
    }
setAutosave вообще непонятный тригер без возможности установить или узнать актуальное состояние из вне.
 
В принципе я очень Вам всем благодарен. Критика то что надо. Ирокез спасибо за перекрытие тылов и адекватный анализ обстановки.

Понял нужно добавить метод getAutosaveStatus. Насчёт того что private $autosave = true. Это ж не проблема исправим на false. Тоже не проблема. Насчёт надобности класса я его не продаю что бы мне в 100 кадыков кричали что он вам не нужен. Хотите дать критику как заметил Ирокез так давайте её по делу а не из глубины ваших амбиций. Нужен вам он или нет это сугубо ваши половые сложности относится к Григорию и к AmdY. Со всем Уважением к вашим навыкам не любите мне мозг о надобности это класса в ваших интересах главное что он мне нужен.
Григорий и AmdY без обид мужики но палку перегибаете очень сурово у меня ник за себя говорит что я новичок.
 
Исходник обновлён. Внёс изменения по теме $this->autosave. Добавил новый метод getAutosaveStatus
 
Beginner.83
извини, а где была с моей стороны необоснованная критика? давай критикуя критику критику обосновывать.

$this->autosave. Добавил новый метод getAutosaveStatus
ты не понял, нужно чтобы setAutosave принимало параметр.
 
Beginner.83
извини, а где была с моей стороны необоснованная критика? давай критикуя критику критику обосновывать.


ты не понял, нужно чтобы setAutosave принимало параметр.
Зачем? Можно же просто засетить в зависимости от задачи.
 
Я пользуюсь твоим классом:
PHP:
$ini = new Ini( 'config.ini' );
// ... код, код
// ... код
$ini->setAutosave(); // в какое значение сейчас установлен autosave?
// ... код
Код должен быть прозрачен и понятен. Чтоб я через месяц заглянул в любую строчку и сразу понял, что у меня тут происходит. Что-бы мне однозначно отключить autosave придётся сделать вот что:
PHP:
$ini = new Ini( 'config.ini' );
// ... код, код
// ... код
if ( $ini->getAutosaveStatus() === true )
    $ini->setAutosave();
// ... код
Хотя можно просто:
PHP:
$ini->setAutosave( false ); // и сразу ясно что мы сделали
 
Я пользуюсь твоим классом:
PHP:
$ini = new Ini( 'config.ini' );
// ... код, код
// ... код
$ini->setAutosave(); // в какое значение сейчас установлен autosave?
// ... код
Код должен быть прозрачен и понятен. Чтоб я через месяц заглянул в любую строчку и сразу понял, что у меня тут происходит. Что-бы мне однозначно отключить autosave придётся сделать вот что:
PHP:
$ini = new Ini( 'config.ini' );
// ... код, код
// ... код
if ( $ini->getAutosaveStatus() === true )
    $ini->setAutosave();
// ... код
Хотя можно просто:
PHP:
$ini->setAutosave( false ); // и сразу ясно что мы сделали
Sufir рад что мои труды понадобились кому то кроме меня) Признаю если об этом заявили уже два человека поменяю. Обновил исходники. По умолчанию автоматическое сохранение отключено.
 
Григорий и AmdY без обид мужики но палку перегибаете очень сурово у меня ник за себя говорит что я новичок.
а ты пришел чтобы тебя поддержали и воодушевили, да? :) детский утренник немного дальше, мы кодом деньги зарабатываем
и только здесь тебе не просто скажут "вы нам не подходите, приходите когда научитесь", а скажут почему и что надо сделать, чтобы соответствовать
 
а ты пришел чтобы тебя поддержали и воодушевили, да? :) детский утренник немного дальше, мы кодом деньги зарабатываем
и только здесь тебе не просто скажут "вы нам не подходите, приходите когда научитесь", а скажут почему и что надо сделать, чтобы соответствовать
Спасибо.
 
код совершенно не читабелен, ни одного комментария.
используй одни метод для записи и получения значения.
 
- используй одни метод для записи и получения значения.
это неправильно. для получения - getFoo(), для установки - setFoo()
 
для получения - $class->foo();, для установки - $class->foo(values);
Ну о вкусах не спорят но если Вам Уважаемый так удобней используйте по своему исходник есть код рабочий так что дерзайте редактируйте как вам удобнее. Если есть новые предложения по поводу функционала пишите буду признателен.
 
вам класс сам использовать не будут.
Если есть новые предложения по поводу функционала пишите буду признателен.
этого всегда полно, например, задать/получить/удалить сразу множество ключей и проверка сохранилось ли:
PHP:
$ini = new Ini( 'config.ini' );
//code
$ini->set(array(
  'section.key1' => 1,
  'section.key2' => 2,
  'section.key3' => 3,
  'section.key4' => 4,
));
//code
if ( $ini->save() )
{
   //code
}
 
вам класс сам использовать не будут.

этого всегда полно, например, задать/получить/удалить сразу множество ключей и проверка сохранилось ли:
PHP:
$ini = new Ini( 'config.ini' );
//code
$ini->set(array(
  'section.key1' => 1,
  'section.key2' => 2,
  'section.key3' => 3,
  'section.key4' => 4,
));
//code
if ( $ini->save() )
{
   //code
}
Приму во внимание.
PHP:
$ini->set('section',array(
  'key1' => 1,
  'key2' => 2,
  'key3' => 3,
  'key4' => 4,
));

Кстати чем тебе не выход? И такой метод работает.
 
Сверху