Array-Inhalt anzeigen
Autor: Ralf v.d.Mark
eingetragen: Montag, 10. September 2007 um 08:58 Uhr (37/2007 Kalenderwoche)
geändert: Montag, 10. September 2007 um 11:30 Uhr (37/2007 Kalenderwoche)
Keywords: cfdump Datenbank-dump
Kategorien: PHP,
Text:
Funktionen zur Anzeige von Array-Inhalten, auch wenn dort
noch weitere Arrays enthalten sind.
Quellcode:
<?php
/**
* @name datei: function_array_anzeigen.php
* @abstract Universal-Datei zur Anzeige von Array-Inhalten
* Diese Datei zeigt ein Array an, auch wenn dort
* noch weitere Arrays enthalten sind
* @author Ralf von der Mark <Ralf@WebSite-vdM.de>
* @copyright Copyright (c) 2005 - 2007, Ralf von der Mark (www.WebSite-vdM.de)
* @version Version vom 07.09.2007 um 14:35:08 Uhr
*
* * * Pflichtangaben:
* @param array, $array_meiner_werte = Array selbst
* @param string, $arrayname = Name des Arrays
* * * Optional:
* @param string, $ausgabe_form = Ausgabeformat //standard ist html
* @param string, $txt_trenner = Trenner //falls Textausgabe eingeschaltet
*
*
* @example Hier ein paar Beispiele:
*
* Beispiel 1 (Ausgabe in HTML):
require_once 'function_array_anzeigen.php';//Aufruf der Datei!
echo array_anzeigen($_SERVER, '$_SERVER');//Standard: Ausgabe in HTML
* Beispiel 2 (Text-Ausgabe evtl. fuer E-Mail-Versand):
require_once 'function_array_anzeigen.php';//Aufruf der Datei!
echo array_anzeigen($_SERVER, '$_SERVER', 'txt', '-------');//Text-Ausgabe
* Beispiel 3 (Ausgabe in HTML):
require_once 'function_array_anzeigen.php';//Aufruf der Datei!
echo array_anzeigen($_SERVER, '$_SERVER', 'html', 0);//Ausgabe in HTML
* Beispiel 4 (Text-Ausgabe evtl. fuer E-Mail-Versand):
require_once 'function_array_anzeigen.php';//Aufruf der Datei!
echo array_in_txt_anz($_SERVER, '$_SERVER');//Text-Ausgabe
* Beispiel 5 (Ausgabe in HTML):
require_once 'function_array_anzeigen.php';//Aufruf der Datei!
echo array_in_html_anz($_SERVER, '$_SERVER');//Ausgabe in HTML
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
function array_anzeigen($array_meiner_werte, $arrayname='(Name unbekannt)',
$ausgabe_form='html', $txt_trenner=FALSE)
{
if (!defined('ZEILENUMBRUCH')) {
# Ist das Betriebssystem Windows, Mac oder Linux?
if(strtoupper(substr(PHP_OS, 0, 3) == 'WIN')) {
define('ZEILENUMBRUCH', chr(13).chr(10));
} elseif(strtoupper(substr(PHP_OS, 0, 3) == 'MAC')) {
define('ZEILENUMBRUCH', chr(13));
} else {
define('ZEILENUMBRUCH', chr(10));
}
}//ENDE: if(defined('ZEILENUMBRUCH'))
if ($ausgabe_form != 'html') {
//ich gehe davon aus, wenn nicht html gesetzt, dann reinen Text ausgeben!
if (empty($txt_trenner)) {
//wenn kein Trenner definiert, dann diesen benutzen!
$txt_trenner = ZEILENUMBRUCH
.'#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#'
.ZEILENUMBRUCH;
}//ENDE: if (empty($trenner))
}//ENDE: if ($ausgabe_form != 'html')
if (is_array($array_meiner_werte)) {
$titel = 'Inhalt des Arrays *'.$arrayname.'*:';
$summe = count($array_meiner_werte);
if ($ausgabe_form != 'html') {
//Text-Ausgabe
$ausgabe = $trenner
.$titel.' ('.$summe.' Eintraege)'
.ZEILENUMBRUCH;
} else {
//HTML-Ausgabe
$ausgabe = '<table '
.'style="color: #0f0f0f; background-color: #ffffff;" '
.'cellspacing="1" '
.'cellpadding="6" '
.'border="1" '
.'summary="'.$titel.'">'
.ZEILENUMBRUCH;
$ausgabe .= '<tr>
<th style="text-align: left; white-space: nowrap; color: #ffffff; background-color: #990000;" '
.'colspan="5">'
.$titel.' ('.$summe.' Einträge)</th>
</tr>'.ZEILENUMBRUCH;
}//ENDE: else ==> if ($ausgabe_form != 'html')
$loop_zaehler = 1;//Zaehler-Variable starten!
foreach($array_meiner_werte as $mein_schluessel => $mein_inhalt)
{
if (is_int($mein_inhalt)) {
$typ = 'integer';
} elseif(is_array($mein_inhalt)) {
$typ = 'array';
} else {
$typ = 'string';
}//ENDE: else ==> if(is_int($mein_inhalt))
if (is_string($mein_inhalt)) {
$mein_inhalt = htmlentities($mein_inhalt);
} elseif(is_array($mein_inhalt)) {
$mein_inhalt = array_anzeigen($mein_inhalt, $mein_schluessel);
}//ENDE: elseif ==> if(is_string($mein_inhalt))
if ($ausgabe_form != 'html') {
//Text-Ausgabe
$ausgabe .= $loop_zaehler.'. von '.$summe.') '
.$arrayname.'[\''.$mein_schluessel.'\']'
.' ==> "'
.$mein_inhalt.'" ('.$typ.')'
.ZEILENUMBRUCH;
} else {
//HTML-Ausgabe
$ausgabe .= '<tr>
<td style="vertical-align: top; white-space: nowrap;">'.$loop_zaehler.'. von '.$summe.'</td>
<td style="vertical-align: top; white-space: nowrap;" title="Typ: '.$typ.'">'
.'<strong>'
.$arrayname.'[\''.$mein_schluessel.'\']'
.'</strong></td>
<td style="vertical-align: top; white-space: nowrap;">»</td>
<td style="text-align: left; vertical-align: top;" title="Typ: '.$typ.'">'.$mein_inhalt.'</td>
<td style="vertical-align: top;">'.$typ.'</td>
</tr>'.ZEILENUMBRUCH;
}//ENDE: else ==> if ($ausgabe_form != 'html')
$loop_zaehler++;//immer einen hoch zaehlen
}//ENDE: foreach($array_meiner_werte as $mein_schluessel => $mein_inhalt)
if ($ausgabe_form != 'html') {
//Text-Ausgabe
$ausgabe .= $trenner;
} else {
//HTML-Ausgabe
$ausgabe .= ZEILENUMBRUCH.'</table>';//Variable definieren
}//ENDE: else ==> if ($ausgabe_form != 'html')
}//ENDE: if(is_array($array_meiner_werte))
else{
if ($ausgabe_form != 'html') {
//Text-Ausgabe
$ausgabe = $trenner.$arrayname.' ist kein Array (Inhalt: "'.$array_meiner_werte.'")'.$trenner;
} else {
//HTML-Ausgabe
$ausgabe = '<h3>'.$arrayname.' ist kein Array (Inhalt: "'.$array_meiner_werte.'")</h3>';
}//ENDE: else ==> if ($ausgabe_form != 'html')
}//ENDE: else ===> if(is_array($array_meiner_werte))
return $ausgabe;
}//ENDE: function array_anzeigen(...)
function array_in_txt_anz($array_meiner_werte, $arrayname='(Name unbekannt)')
{
if (is_array($array_meiner_werte)) {
$trenner = ZEILENUMBRUCH
.'#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#~#'
.ZEILENUMBRUCH;
$titel = 'Inhalt des Arrays *'.$arrayname.'*:';
$summe = count($array_meiner_werte);
$ausgabe = $trenner
.$titel.' ('.$summe.' Eintraege)'
.ZEILENUMBRUCH;
$loop_zaehler = 1;//Zaehler-Variable starten!
foreach($array_meiner_werte as $mein_schluessel => $mein_inhalt)
{
if(is_int($mein_inhalt)){
$typ = 'integer';
}//ENDE: if(is_int($mein_inhalt))
elseif(is_array($mein_inhalt)){
$typ = 'array';
}//ENDE: elseif(is_array($mein_inhalt))
else{
$typ = 'string';
}//ENDE: else ==> if(is_int($mein_inhalt))
if (is_array($mein_inhalt)) {
$mein_inhalt = array_in_txt_anz($mein_inhalt, $mein_schluessel);
}//ENDE: if(is_string($mein_inhalt))
$ausgabe .= $loop_zaehler.'. von '.$summe.') '
.$arrayname.'[\''.$mein_schluessel.'\']'
.' ==> "'
.$mein_inhalt.'" ('.$typ.')'
.ZEILENUMBRUCH;
$loop_zaehler++;
}//ENDE: foreach($array_meiner_werte as $mein_schluessel => $mein_inhalt)
$ausgabe .= $trenner;
}//ENDE: if(is_array($array_meiner_werte))
else{
$ausgabe = $trenner.$arrayname.' ist kein Array (Inhalt: "'.$array_meiner_werte.'")'.$trenner;
}//ENDE: else ===> if(is_array($array_meiner_werte))
return $ausgabe;
}//ENDE: function array_in_txt_anz(...)
function array_in_html_anz($array_meiner_werte, $arrayname='(Name unbekannt)')
{
if(is_array($array_meiner_werte)){
$titel = 'Inhalt des Arrays *'.$arrayname.'*';
$summe = count($array_meiner_werte);
$ausgabe = '<table '
.'style="color: #0f0f0f; background-color: #ffffff;" '
.'cellspacing="1" '
.'cellpadding="6" '
.'border="1" '
.'summary="'.$titel.'">'
.chr(13);
$ausgabe .= '<tr>
<th style="text-align: left; white-space: nowrap; color: #ffffff; background-color: #990000;" '
.'colspan="5">'
.$titel.' ('.$summe.' Einträge)</th>
</tr>'.chr(13);
$loop_zaehler = 1;//Zaehler-Variable starten!
foreach($array_meiner_werte as $mein_schluessel => $mein_inhalt)
{
if (is_int($mein_inhalt)) {
$typ = 'integer';
} elseif(is_array($mein_inhalt)) {
$typ = 'array';
} else {
$typ = 'string';
}//ENDE: else ==> if(is_int($mein_inhalt))
if(is_string($mein_inhalt)){
$mein_inhalt = htmlentities($mein_inhalt);
} elseif(is_array($mein_inhalt)) {
$mein_inhalt = array_anzeigen($mein_inhalt, $mein_schluessel);
}//ENDE: elseif ==> if(is_string($mein_inhalt))
$ausgabe .= '<tr>
<td style="vertical-align: top; white-space: nowrap;">'.$loop_zaehler.'. von '.$summe.'</td>
<td style="vertical-align: top; white-space: nowrap;" title="Typ: '.$typ.'">'
.'<strong>'
.$arrayname.'[\''.$mein_schluessel.'\']'
.'</strong></td>
<td style="vertical-align: top; white-space: nowrap;">»</td>
<td style="text-align: left; vertical-align: top;" title="Typ: '.$typ.'">'.$mein_inhalt.'</td>
<td style="vertical-align: top;">'.$typ.'</td>
</tr>'.chr(13);
$loop_zaehler++;
}//ENDE: foreach($array_meiner_werte as $mein_schluessel => $mein_inhalt)
$ausgabe .= chr(13).'</table>';//Variable definieren
}//ENDE: if(is_array($array_meiner_werte))
else{
$ausgabe = '<h3>'.$arrayname.' ist kein Array (Inhalt: "'.$array_meiner_werte.'")</h3>';
}//ENDE: else ===> if(is_array($array_meiner_werte))
return $ausgabe;
}//ENDE: function array_in_html_anz(...)
?>