Nous disposons de la fonction var_dump, mais pas de la fonction print_r qui affiche les variables simples et tableaux ou objets.
Voir le lien pour le détail de la fonction en PHP: print_r
- Code : Tout sélectionner
// Fonction de remplacement de print_r en PHP
function sdk_print_r($input, $return = false ) {
global $indent,$return;
if (!isset($indent)) {$indent = 0;}
$response = "";
if ($return == false) {
if (is_array($input) || is_object($input)) {
if (is_array($input)){ echo "Array\n" . str_repeat(" ", $indent) . "(\n";}
if (is_object($input)){ echo "stdClass Object\n" . str_repeat(" ", $indent) . "(\n";}
foreach ($input as $key => $value) {
if (is_array($value) || is_object($value)) {
echo str_repeat(" ", $indent + 4) . "[".$key."] => ";
$indent .= 8;
sdk_print_r($value, $return);
$indent = $indent-8;
} else {
echo str_repeat(" ", $indent + 4) . "[".$key."] => $value\n";
}
}
echo str_repeat(" ", $indent) . ")\n";
} else {
echo "$input\n";
}
}
if ($return == true) {
if (is_array($input) || is_object($input)) {
if (is_array($input)){ $response.= "Array\n" . str_repeat(" ", $indent) . "(\n";}
if (is_object($input)){ $response.= "stdClass Object\n" . str_repeat(" ", $indent) . "(\n";}
foreach ($input as $key => $value) {
if (is_array($value) || is_object($value)) {
$response.= str_repeat(" ", $indent + 4) . "[".$key."] => ";
$indent .= 8;
sdk_print_r($value, $return);
$indent = $indent-8;
} else {
$response.= str_repeat(" ", $indent + 4) . "[".$key."] => $value\n";
}
}
$response.= str_repeat(" ", $indent) . ")\n";
} else {
$response.= "$input\n";
}
return $response;
}
}
J'ai sollicité la teams pour inclure cette fonction dans la box. Malheureusement, pour des raisons de rétrocompatibilité avec la box eedomus (vs eedomus+) il n'est pas possible de mettre cela en fonction globale dans pour la box.
Il faut déclarer une fonction dans vos scripts pour avoir ce résultat, je vous propose cette fonction sous le nom de sdk_print_r() (le jour où la team la passera en global, alors il n'y aura qu'à supprimer la déclaration de votre fonction dans vos scripts ).
Bonne soirée
dommarion