Browse Source

deplacer la def de array_replace_recursive pour PHp 5.3 ailleurs, pour y voir plus clair dans le code

pull/72/head
Maïeul 2 years ago
parent
commit
5199392697
  1. 69
      formulaires/construire_formulaire.php

69
formulaires/construire_formulaire.php

@ -5,6 +5,7 @@ if (!defined('_ECRIRE_INC_VERSION')) {
return;
}
/**
* Formulaire permettant de construire un formulaire ! En agençant des champs
* Chargement.
@ -386,39 +387,6 @@ function formulaires_construire_formulaire_traiter($identifiant, $formulaire_ini
if (($defaut = $saisies_disponibles[$ajouter_saisie]['defaut']) and is_array($defaut)) {
$defaut = _T_ou_typo($defaut, 'multi');
//Compatibilite PHP<5.3.0
//source : http://www.php.net/manual/en/function.array-replace-recursive.php#92574
if (!function_exists('array_replace_recursive')) {
function array_replace_recursive($array, $array1) {
function recurse($array, $array1) {
foreach ($array1 as $key => $value) {
// create new key in $array, if it is empty or not an array
if (!isset($array[$key]) || (isset($array[$key]) && !is_array($array[$key]))) {
$array[$key] = array();
}
// overwrite the value in the base array
if (is_array($value)) {
$value = recurse($array[$key], $value);
}
$array[$key] = $value;
}
return $array;
}
// handle the arguments, merge one by one
$args = func_get_args();
$array = $args[0];
if (!is_array($array)) {
return $array;
}
for ($i = 1; $i < count($args); $i++) {
if (is_array($args[$i])) {
$array = recurse($array, $args[$i]);
}
}
return $array;
}
}
$saisie = array_replace_recursive($saisie, $defaut);
}
@ -716,3 +684,38 @@ function saisies_groupe_inserer($formulaire_actuel, $saisie) {
return $formulaire_actuel;
}
//Compatibilite PHP<5.3.0
//source : http://www.php.net/manual/en/function.array-replace-recursive.php#92574
if (!function_exists('array_replace_recursive')) {
function array_replace_recursive($array, $array1) {
function recurse($array, $array1) {
foreach ($array1 as $key => $value) {
// create new key in $array, if it is empty or not an array
if (!isset($array[$key]) || (isset($array[$key]) && !is_array($array[$key]))) {
$array[$key] = array();
}
// overwrite the value in the base array
if (is_array($value)) {
$value = recurse($array[$key], $value);
}
$array[$key] = $value;
}
return $array;
}
// handle the arguments, merge one by one
$args = func_get_args();
$array = $args[0];
if (!is_array($array)) {
return $array;
}
for ($i = 1; $i < count($args); $i++) {
if (is_array($args[$i])) {
$array = recurse($array, $args[$i]);
}
}
return $array;
}
}

Loading…
Cancel
Save