Generate::domainWorker PHP Méthode

domainWorker() public méthode

public domainWorker ( ) : array
Résultat array
    public function domainWorker()
    {
        $domainsFile = __DIR__ . "/domains.txt";
        $handle = fopen($domainsFile, "r");
        if (!$handle) {
            throw new \RuntimeException('Error opening file ' . $domainsFile);
        }
        $lines = array();
        while (($line = fgets($handle)) !== false) {
            $line = trim(preg_replace('/\\s\\s+/', ' ', $line));
            // convert russian domains
            if (preg_match('/[А-Яа-яЁё]/u', $line)) {
                $IDN = new IdnaConvert();
                $line = $IDN->encode($line);
            }
            if (empty($line)) {
                continue;
            }
            $lines[] = $line;
        }
        fclose($handle);
        $uniqueLines = array_unique($lines, SORT_STRING);
        sort($uniqueLines, SORT_STRING);
        if (is_writable($domainsFile)) {
            file_put_contents($domainsFile, implode("\n", $uniqueLines));
        } else {
            trigger_error("Permission denied");
        }
        return $lines;
    }

Usage Example

            }
        } else {
            trigger_error("Permission denied");
        }
    }
    /**
     * @param array  $lines
     */
    public function createGoogleExclude(array $lines)
    {
        $file = __DIR__ . '/../google-exclude.txt';
        $reqexLines = [];
        foreach ($lines as $line) {
            $reqexLines[] = preg_quote($line);
        }
        $data = implode('|', $reqexLines);
        if (is_readable($file) && is_writable($file)) {
            file_put_contents($file, $data);
        } else {
            trigger_error("Permission denied");
        }
    }
}
date_default_timezone_set('UTC');
$date = date('Y-m-d H:i:s');
$generator = new Generate();
require __DIR__ . '/vendor/autoload.php';
$lines = $generator->domainWorker();
$generator->createApache($date, $lines);
$generator->createNginx($date, $lines);
$generator->createGoogleExclude($lines);