Bonjour,
Avant enregistrement en base de données, j'ai besoin que toutes les variables soient déclarées mais que les variables vides valent NULL. Je n'y arrive pas.
Avec php 8, si j'écris $mavariable = NULL, ça ne fonctionne pas (voir cette page).
Si j'écris unset($mavariable), ça ne fonctionne pas non plus.
ça me gêne en particulier dans la détection de doublons et pour les dates qui sont remplacées par des "0000-00-00" en base de données alors que les valeurs par défaut valent NULL.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
	foreach($data as $key1=>$line)
	{
		foreach($line as $key2=>&$item)
		{
			var_dump($key2,$item);
			if( in_array($key2, $addressCols) )
			{
				if( in_array($item, $names, true) )
					$item = str_replace($names, $ids, $item);
				$item = str_replace("  ", "\r\n", $item);
				if( empty($item) )
					unset($item);
				$newAddress[$reverseAddr[$key2]] = $item;
			}
			if( in_array($key2, $memberCols) )
			{
				if( empty($item) )
					unset($item);
				$newMember[$reverseMemb[$key2]] = $item;
			}
		}
		var_dump($newAddress, $newMember);	// Le code est bien exécuté mais les chaînes vides ne sont pas remplacées.
	}