Merci, j'avais omis la possibilité d'espacer avec des points
La regex est complexe pour vérifier si les numéros sont espacés ou pas, avec ou sans tiret(s).
J'avoue que ma regex est un peu complexe, je comprends pas pourquoi la tienne ignore les sauts de lignes et la mienne continue.
/\+?\d+/ est trop simple et peut être passé sans souci pour celui qui connait la règle, je dois vraiment faire en sorte de récupérer tout numéro de téléphone potentiel dans le corps du message. +0612345678 et 0512345785 sont simples, pour l'exemple.
Personnellement je préfère utiliser [0-9], pour être sur qu'il accepte 0-9 (j'ai vu des forums qu'il acceptait aussi d'autre type de chiffres, en d'autres langues... a confirmer).
EDIT : je viens de comprendre, c'est mon \s qui accepte aussi les retours, une raison de + de pourquoi je préfère utiliser des choses compréhensibles, comme un espace " ", plutôt que "\s" (pareil que les "[0-9]" et les lettres

).
Merci encore !!
Voilà ma meilleure façon de récupérer ce qui s'apparente à des numéros de téléphones :
preg_match_all("#[+(]?(?:[0-9][.() -]*){8,10}[0-9]#", "+0612345678
+33612345678
+33 6 123 45 1 2 3. 4 5 6 7 8 9
+899552255
1234567890
123456789
12345678
1234567
(812) 602-0899
(812) (602)-0899
1-812-602-0899
05.12345678
0512345785
j'habite dans le 06.
mon departement 06123
j'ai gagné 215.215.215€ (est vu comme un numéro, faudrait mettre une vérification si le numéro est suivi d'une devise mais je sais pas faire) et 12345678 centimes
06.12.34.56.78
06 - 12 - 34 . - 56 - 78
+06.12.34.56.78", $match);
var_dump($match);
Code : Tout sélectionner
C:\wamp64\www\test.php:22:
array (size=1)
0 =>
array (size=15)
0 => string '+0612345678' (length=11)
1 => string '+33612345678' (length=12)
2 => string '+33 6 123 45 1 2 3' (length=27)
3 => string '+899552255' (length=10)
4 => string '1234567890' (length=10)
5 => string '123456789' (length=9)
6 => string '(812) 602-0899' (length=14)
7 => string '(812) (602)-0899' (length=16)
8 => string '1-812-602-0899' (length=14)
9 => string '05.12345678' (length=11)
10 => string '0512345785' (length=10)
11 => string '215.215.215' (length=11)
12 => string '06.12.34.56.78' (length=14)
13 => string '06 - 12 - 34 . - 56 - 78' (length=28)
14 => string '+06.12.34.56.78' (length=15)