Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

gelöst php-Datei auslesen und formatiert ausgeben

Mitglied: joeker

joeker (Level 1) - Jetzt verbinden

08.12.2008, aktualisiert 10.12.2008, 4601 Aufrufe, 6 Kommentare

Hallo nochmal,

ich hatte vorgehabt, bestimmte php-Codedateien auszulesen und in einem DIV-Container auszugeben, damit die User den Quellcode eines php-Programms einlesen können.
Mit den folgenden Code lese ich die Datei ein:

01.
$arr_file = file($file); 
02.
foreach($arr_file as $line)	{ 
03.
    $output .= sprintf(" %s <br />", $line); 
04.
}
Um die Kommentare übersichtlich darzustellen, habe ich diese mithilfe von "preg_replace()" ausformatiert:

01.
$line = preg_replace("/^(\/\/)\s(.*)$/U", "<span style=\"color:#003151; font-weight:bold\">\\1 \\2</span>", htmlentities($line));
Und nun zum Problem: Wie bekomme ich die Whitespaces ausgegeben. In der Original-Datei befinden sich sämtliche Einrückungen, die im Browser leider nicht ausgegeben werden.
Mein Versuch:

01.
$line = str_replace(" ", "&nbsp;", $line);
Geht leider nur für die erste Zeile; der Rest bleibt gleich. Habt ihr viellciht eine Idee?
Mitglied: Arano
08.12.2008 um 18:18 Uhr
Schau dir doch mal PHP-Manual - highlight_string() und PHP-Manual highlight_file() an, die nehmen dir die ganze Arbeit ab :wink:

~Arano
Bitte warten ..
Mitglied: joeker
09.12.2008 um 15:04 Uhr
Ja, ok haste recht.
Aber das löst mein Problem auch nicht, dass die Leerzeichen alle angezeigt werden.
Haste vielleicht da eine Idee?
Bitte warten ..
Mitglied: Arano
09.12.2008 um 15:56 Uhr
Hm... hab mir mal was gebastelt, und da funktioniert es - wie erwartet.

php.php - auszugebenes PHP
01.
<?php 
02.
 // ein kommentarchen 
03.
 echo 'Ein echo.. HALLOOOO ECHOOOO ;)'
04.
 $zahl=145; 
05.
 if(isset($zahl)&&$zahl==145){ 
06.
  echo 'Oho, ein Hellseher' 
07.
08.
?>
index.php - die verarbeitende datei
01.
<?php 
02.
 
03.
 $datei=file('./php.php'); 
04.
 $oput=''
05.
 foreach($datei as $zeile
06.
  $oput.=$zeile
07.
  
08.
 highlight_string($oput); 
09.
 
10.
?>
ausgabe
01.
<span style="color: #000000"> 
02.
<span style="color: #0000BB">&lt;?php 
03.
<br />&nbsp;</span><span style="color: #FF8000">//&nbsp;ein&nbsp;kommentarchen 
04.
<br />&nbsp;</span><span style="color: #007700">echo&nbsp;</span><span style="color: #DD0000">'Ein&nbsp;echo..&nbsp;HALLOOOO&nbsp;ECHOOOO&nbsp;;)'</span><span style="color: #007700">; 
05.
<br />&nbsp;</span><span style="color: #0000BB">$zahl</span><span style="color: #007700">=</span><span style="color: #0000BB">145</span><span style="color: #007700">; 
06.
<br />&nbsp;if(isset(</span><span style="color: #0000BB">$zahl</span><span style="color: #007700">)&amp;&amp;</span><span style="color: #0000BB">$zahl</span><span style="color: #007700">==</span><span style="color: #0000BB">145</span><span style="color: #007700">){ 
07.
 
08.
<br />&nbsp;&nbsp;echo&nbsp;</span><span style="color: #DD0000">'Oho,&nbsp;ein&nbsp;Hellseher' 
09.
<br />&nbsp;</span><span style="color: #007700">} 
10.
<br /></span><span style="color: #0000BB">?&gt;</span> 
11.
</span>
Wobei man die Datei auch gleich mit highlight_file() einlesen könnte... viel mir aber eben erst ein ^^

~Arano


EDIT:
Auch mit mehreren Leerzeichen hintereinander in dem Echo hat es funktioniert.
Bitte warten ..
Mitglied: joeker
09.12.2008 um 17:25 Uhr
Achso ist das

Aber wie bekomme ich den Code in einen DIV-Container? Bei mir gibt er mir den Code genau über meine Website aus; also außerhalb des Templates.
Bitte warten ..
Mitglied: joeker
09.12.2008 um 17:49 Uhr
Ok, hab es selber herrausgefunden. Ich musste nur den zweiten Parameter auf true setzen ;)

Vielen dank dir Arano!
Bitte warten ..
Mitglied: Arano
10.12.2008 um 15:10 Uhr
Korrekt !
Gern geschehen

~Arano
Bitte warten ..
Ähnliche Inhalte
PHP
Externe XML-Datei in PHP auslesen
gelöst Frage von AkroshPHP18 Kommentare

Hallo, ich habe eine Frage zu XML und PHP. Ich habe eine externe XML-Datei die ich per PHP auslesen ...

PHP

Mit PHP eine Telnet abfrage machen und ausgeben

Frage von helmuthelmut2000PHP1 Kommentar

Hallo, Ich möchte folgendes machen und hätte da etwas Hilfe gebraucht. Ich habe an meiner Heizung einen Optolink Adapter ...

Microsoft Office

Access 2010 - Pivot Table als Formatierten Bericht ausgeben

Frage von halbschuh107Microsoft Office3 Kommentare

Hallo zusammen, ich arbeite mich gerade in Access ein und habe für Arbeit eine Pivot Table zu erstellen. Das ...

Batch & Shell

Inhalte aus einer Datei auslesen und anders angeordnet in neuer Datei ausgeben lassen

gelöst Frage von ArminVanDykBatch & Shell8 Kommentare

Hallo, ich habe folgendes Problem. In meinem Unternehmen haben wir jetzt eine neue Kasse im Einsatz, welche die Mitarbeiterzeiten ...

Neue Wissensbeiträge
Sicherheit

Ungepatchte Remote Code Execution-Lücke in LG NAS

Information von kgborn vor 12 StundenSicherheit

Nutzt wer LG NAS-Einheiten? In den NAS-Einheiten der LG Network Storage-Einheiten gibt es eine sehr unschöne Schwachstelle, die einen ...

Windows Update

Neue Version KB4099950 NIC Einstellungen gehen verloren

Information von sabines vor 17 StundenWindows Update2 Kommentare

Es ist eine neue Version des KB4099950 verfügbar, die das Problem mit den verlorenen Netzwerkeinstellungen lösen soll. Das Datum ...

Microsoft Office

MS Office 2019 ohne OneNote - OneNote App speichert nur in Cloud

Information von Deepsys vor 1 TagMicrosoft Office5 Kommentare

Microsoft zeigt deutlich wohin alles bei Ihnen geht, OneNote 2019 wird es nicht mehr geben, und die Windows 10 ...

Humor (lol)

Warum man sein Gast-WLAN nicht beliebig nennen sollte

Erfahrungsbericht von Henere vor 2 TagenHumor (lol)5 Kommentare

Servus, mal was aus dem Alltag. Zu Hause. Eigentlich wollte ich nur einen weiteren WLAN-AP ins Netz bringen, damit ...

Heiß diskutierte Inhalte
Festplatten, SSD, Raid
Server SSD: NVMe PCIe 3.0 RAID?
Frage von bouneeFestplatten, SSD, Raid15 Kommentare

Hallo liebe Admins, mir stellt sich gerade die Frage, ob ein neuer Server mit SSD NVMe PCIe 3.0 Sinn ...

Sonstige Systeme
Wie Normenkataloge im Unternehmen bereit stellen?
Frage von MuzzepuckelSonstige Systeme14 Kommentare

Hallo Kollegen, ich lese schon lange hier mit, nun mein ersrer Beitrag, bzw. Frage. :-) Wir benötigen für unsere ...

Windows 10
Windows 10 Startmenü-Einstellungen Systemweit festlegen
Frage von flotautWindows 1013 Kommentare

Guten Morgen liebe Admins, wir möchten bei uns am Lehrstuhl demnächst auf Windows 10 umsteigen. Wir installieren unsere PC's ...

LAN, WAN, Wireless
OpenVPN Client Fehlermeldungen
Frage von chris84LAN, WAN, Wireless12 Kommentare

Hallo Zusammen, wir nutzen seit kurzem einen neuen Router und den OpenVPN Client. Die VPN Verbindung klappt; allerdings kommen ...