Ce script à pour but de venir comparer deux environnements au niveau des droits de chaque table indiqué dans la liste $mco le formalisme pour ajouter une table est le suivant: nom de la table à comparer"=>array( 'condition' => array( "id_type" => "174, 80, 168, ...", "id_work" => "!=-1"), 'tables' =>array( 'table_obj' => 'nom de la table de l'objet à comparer', ex: param_obj_btn 'table_join_work' => 'nom de la table de droit de l'objet à comparer', ex : param_drt_btn 'table_join_statut' => 'param_obj_wrk'), 'table_obje' =>array( "id_obj" => "id_xx", => attribut à modifier en fonction de l'objet "nom_objet" => "nom"), 'table_join_work' =>array( "id_work_drt" => "id_work", "id_role" => "id_role", "id_type" => "id_type", "droit" => "droit"), 'table_join_statut' =>array( "nom_statut" => "nom", "id_work_statut" => "id_work",) ), ATTENTION de vérifier si la table 'table_join_statut' est nécessaire en fonction de l'objet
$objet(array) pour le moment liste contenant les différents type d'objet à modifier par une jointure
$droit(array) pour le moment liste contenant les droits à modifier si possible
$role(array) pour le moment liste contenant les groupes à modifier par une jointure
$detail(string) table de base rechercher
↩️ Returns
(array) Tableaux des différences entre les deux environnements
🔧 array_to_markdown
Fonction pour la conversion du tableau en markdown
function array_to_markdown(array $data) {
$markdown = "";
$markdown .= 'Il y a '.$data['count'].' lignes différente(s) entre Serge et Test';
$markdown .= "\n\n";
$markdown .= "| Objet | Rôle | Statut | droit sur Serge | droit sur Test | Différence |Type de détail|\n";
$markdown .= "|:---------|:---------|:---------:|:-------------:|:-------------:|:-------------|:-------------|\n";
foreach ($data['table'] as $item) {
foreach ($item as $value) {
$markdown .= " $value |";
}
// ... (truncated)