PHPerKaigi 2021

Laufzeit-Konfiguration

Das Verhalten dieser Funktionen wird durch Einstellungen in der php.ini beeinflusst.

Konfigurations-Optionen für Sonstiges
Name Standard Veränderbar Changelog
ignore_user_abort "0" PHP_INI_ALL  
highlight.string "#DD0000" PHP_INI_ALL  
highlight.comment "#FF8000" PHP_INI_ALL  
highlight.keyword "#007700" PHP_INI_ALL  
highlight.bg "#FFFFFF" PHP_INI_ALL Entfernt in PHP 5.4.0.
highlight.default "#0000BB" PHP_INI_ALL  
highlight.html "#000000" PHP_INI_ALL  
browscap NULL PHP_INI_SYSTEM  
Weitere Details und die Definitionen der PHP_INI_*-Konstanten finden Sie im Wo Konfigurationseinstellungen gesetzt werden können.

Hier eine kurze Erklärung der Konfigurationsoptionen:

ignore_user_abort boolean

Standardmäßig false. Wird die Einstellung auf true geändert, werden Skripte nicht beendet, nachdem der Client die Verbindung abgebrochen hat.

Siehe auch ignore_user_abort().

highlight.bg string
highlight.comment string
highlight.default string
highlight.html string
highlight.keyword string
highlight.string string

Farbangaben für Syntax-Highlighting. Alle Angaben, die bei <font color="??????"> gültig sind, funktionieren.

browscap string

Name (z.B.: browscap.ini) und Speicherort der Datei mit den Angaben zu den Fähigkeiten der verschiedenen Browser. Siehe auch get_browser().

add a note add a note

User Contributed Notes 3 notes

up
1
Eric
6 months ago
To change the style directly from a CSS file, it is recommended to only go through classes instead of hard-coding it.

<?php

    $functions
= array("default", "html", "keyword", "string", "comment");

    foreach (
$functions as $value) {
       
ini_set("highlight.$value", "highlight-$value;");
    }

?>

And in the CSS file (for example) :

.highlight-html { color: #000000; }
.highlight-default { color: #0000bb; }
.highlight-keyword { color: #007700; font-weight: bold; }
.highlight-string { color: #dd0000; }
.highlight-comment { color: #ff8000; }
up
0
Nico
2 years ago
To pass more than one css rule, but also a class, an id, or any html attribute to highlighted element, we can escape a quote to close the inline styling:

    ini_set('highlight.string', '#F8F8F8 ; font-size:1.4em\" class=\'string\' ');
up
-1
Eric
6 months ago
*** Additions to the previous message ***

To change the style directly from a CSS file, it is recommended to only go through classes instead of hard-coding it.

<?php

   
// Create an array with default php functions

   
$functions = array("default", "html", "keyword", "string", "comment");

   
// Replace color code (ex: #FF8000) with class name (ex:"highlight-comment")

   
foreach ($functions as $value) {
       
ini_set("highlight.$value", "highlight-$value;");
    }

   
$content = highlight_file($filename, true);
   
// or
   
$content = highlight_string($string, true);

   
// Convert style="color: highlight-function" into class="highlight-function" into $content
    // It allows you to modify only the default functions

   
foreach ($functions as $value) {
       
$content = preg_replace("/style=\"color: highlight-$value;\"/", "class=\"highlight-$value\"", $content);
    }

?>

And in the CSS file (for example) :

.highlight-html { color: #000000; }
.highlight-default { color: #0000bb; }
.highlight-keyword { color: #007700; font-weight: bold; }
.highlight-string { color: #dd0000; }
.highlight-comment { color: #ff8000; }
To Top