Какой флаг я должен использовать для создания файла, если он не существует? Пожалуйста, не закрывайте точку сразу после fopen()
, потому что переносится «трудная часть» (декодирование зашифрованного содержимого) функцией load()
(логика декодирования не показана):
Class MyClass
{
protected $filename, $data;
public function __construct($filename)
{
$this->filename = $filename;
// Create if not exists
if(!file_exists($this->filename))
{
$fp = fopen($this->filename, '');
fclose($fp);
}
$this->load();
}
public function load()
{
$data = file_get_contents($this->filename);
$this->data = $data === false ? array() : $data;
}
}