Prado\I18N\core\Gettext\TGettext_PO::save PHP Метод

save() публичный Метод

Save PO file
public save ( string $file = null ) : mixed
$file string
Результат mixed Returns true on success or PEAR_Error on failure.
    function save($file = null)
    {
        if (!isset($file)) {
            $file = $this->file;
        }
        // open PO file
        if (!is_resource($fh = @fopen($file, 'w'))) {
            return false;
        }
        // lock PO file exclusively
        if (!flock($fh, LOCK_EX)) {
            fclose($fh);
            return false;
        }
        // write meta info
        if (count($this->meta)) {
            $meta = 'msgid ""' . "\nmsgstr " . '""' . "\n";
            foreach ($this->meta as $k => $v) {
                $meta .= '"' . $k . ': ' . $v . '\\n"' . "\n";
            }
            fwrite($fh, $meta . "\n");
        }
        // write strings
        foreach ($this->strings as $o => $t) {
            fwrite($fh, 'msgid "' . parent::prepare($o, true) . '"' . "\n" . 'msgstr "' . parent::prepare($t, true) . '"' . "\n\n");
        }
        //done
        @flock($fh, LOCK_UN);
        @fclose($fh);
        chmod($file, PRADO_CHMOD);
        return true;
    }