Heim >Backend-Entwicklung >PHP-Problem >So ändern Sie Konstanten in PHP

So ändern Sie Konstanten in PHP

王林
王林Original
2020-07-23 18:02:374023Durchsuche

So ändern Sie Konstanten in PHP: Sie können reguläre Ausdrücke verwenden, um Konstanten zu ändern. Um reguläre Ausdrücke zu verwenden, müssen wir die Funktion preg_replace() verwenden, mit der eine Suche und Ersetzung regulärer Ausdrücke durchgeführt wird.

So ändern Sie Konstanten in PHP

Wir können die reguläre Substitution verwenden, um Konstanten zu ändern, was am einfachsten und bequemsten ist.

(Empfohlenes Tutorial: php-Tutorial )

Funktionseinführung:

Die preg_replace-Funktion führt eine Suche und Ersetzung regulärer Ausdrücke durch.

Funktionssyntax:

mixed preg_replace(mixed $pattern , mixed $replacement, mixed $subject[, int $limit = -1[, int &$count]])

Parameterbeschreibung:

  • $pattern: Das zu durchsuchende Muster, das ein String oder ein String-Array sein kann.

  • $replacement: String oder Array von Strings, die zum Ersetzen verwendet werden.

  • $subject: Der Zielstring oder das String-Array, der durchsucht und ersetzt werden soll.

  • $limit: Optional, die maximale Anzahl von Ersetzungen für jede Betreffzeichenfolge pro Muster. Der Standardwert ist -1 (keine Begrenzung).

  • $count: Optional, die Häufigkeit, mit der die Ersetzung durchgeführt wird.

Rückgabewert:

Wenn subject ein Array ist, gibt preg_replace() ein Array zurück, andernfalls einen String. Wenn eine Übereinstimmung gefunden wird, wird der ersetzte Betreff zurückgegeben, andernfalls wird der unveränderte Betreff zurückgegeben. Tritt ein Fehler auf, wird NULL zurückgegeben.

Code-Implementierung:

/*
    @param 常量文件
    @param 修改数组(常量名=>常量值)
    @return 失败返回false  成功修改常量文件
    */
    function constEdit($file, $arr)
    {
        $info = file_get_contents($file);
        foreach ($arr as $k => $v) {
            $info = preg_replace("/define\(\"{$k}\",\".*?\"\)/", "define(\"{$k}\",\"{$v}\")", $info);
        }
        return file_put_contents($file, $info);
    }

Mit dieser Methode müssen wir nur den entsprechenden konstanten Dateispeicherort und das geänderte Array übergeben.

Anwendungsszenario:

<form action="action.php" method="post">
    <input name="HOST" type="text" />
    <input name="DBNAME" type="text" />
    <input type="submit" value="修改"/>
</form>

Zu diesem Zeitpunkt müssen Sie auf der Seite action.php nur das vollständige Array von $_POST empfangen und an die Methode übergeben.

Es ist zu beachten, dass Sie beim Definieren von Konstanten doppelte Anführungszeichen verwenden müssen, wie zum Beispiel:

define("HOST","127.0.0.1");
define("DBNAME","mysql");

Zweitens sollte der Name der Konstante dem Namen im Formular entsprechen.

Das obige ist der detaillierte Inhalt vonSo ändern Sie Konstanten in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn