par
Dsynx » 13 juin 2022, 10:46
je répond pas vaiment à ton sujet mais je te propose un regex plus simple pour ta fonction IsEmail :
$re = '/([[:ascii:]]*)\@([[:ascii:]]*)\.(\w+)/';
$str = '[email protected]';
preg_match($re, $str, $matches, PREG_OFFSET_CAPTURE, 0);
// Print the entire match result
var_dump($matches);
ça prend en charge les . - et _ et ça récup chaque partie mais à toit de tester
---
j'ai pas trop le temps de tout revoir dans ton code.
mais déjà je te donne des conseils qui sont plus dans mon style technique de codage
ça ne veux pas dire que tous les Dev PHP seront d'accord avec moi. mais tu auras une
Idée de comment certain travail.
0 - on ne mélange pas les torchons et les serviettes et encore moins les torchons-serviette
1 - déjà pour moi je ne mélange jamais, jamais, jamais du HTML et du PHP
ou tu as une page PHP qui produit du HTML ou tu as du HTLM Pure sans PHP
donc en amont c'est une page PHP et elle va générer du HTML.
2 - après pour la lisibilité j'utilise les Monades on est dans du Design pattern enfin c'est l'idée est là et là encore comme dans le premier point
on ne met pas de HTML dans du PHP et tu vas me dire mais ou on va foutre les balises à un moment je dois bien mettre <truc muche
c'est justement là qu'intervient les Monades si tu veux c'est comme encapsuler du texte ou du contenu voila un exemple
private function endtag($tag, $value)
{
return ["</$tag>", $value[1]];
}
private function startHTML($value, $injection, $arbre_noms, $argument, $no_aid)
{
return $this->gentag('html', $value, $argument);
}
du coup tu peux fabriqué des balises que tu vas construire mais dans ton php ou une page dédier à cela.
3 - la réponse est oui je reviens au point 1 il existe pour moi 1 seul cas de figure ou j'ai le droit de mélanger du HTML et du PHP
c'est une page contenant du code générer par php. il y a des étapes aussi à respecter quand on produit un contenu.
produit -> stocker->mise en ligne 3 étape différentes. la page mise en ligne c'est la v1 visible par le client qui est sur la page.
la version stocker c'est possible que ça soit la V2 non visible encore et quand ça le sera le V1 sera écrasé.
c'est pour cela qu'on en arrive à donné la capacité à php de produire du contenu qui peut mélanger du php et du html.
mais c'est purement par finalité du genre toi jamais tu vas y mettre les mains. tu ne travail que coté PHP et jamais jamais jamais tu n'écris une balise HTML <truc muche> non comme plus haut tu as déjà une fonction qui fabrique tes balises.
tout cela c'est de l'automatisation et tu retrouve ce genre de concept dans beaucoup de framework.
est donc c'est bien ? oui pour la lisibilité et la maintenance du code.
maintenant pareil la page qui va contenir ce code PHP et qui va produire du HTML en usant de tout les avantage de PHP
on ne la mélange pas avec du pure code PHP aussi on va lui dédier une page à elle avec un nom spécifique du genre : interface_1_page.php (le _page mais ça peut être un autre nom ) sera là pour reconnaitre que c'est du code spécifique à la production d'un contenu HTML
bon alors à quoi ça ressemble des Monades du PHP qui produit du html : voici un exemple rapide
use Eukaruon\configs\CMD;
use Eukaruon\modules\Modules_actions as AC;
use Eukaruon\modules\Modules_objets as MO;
use Eukaruon\pilote;
define('THEMEUSE', 'grey');
AC::debutTempTest();
MO::doctype();
MO::tete();
MO::meta(['charset' => 'UTF-8']);
if (MO::session('utilisateur', 'inscript'))
MO::autoload('page_produits');
MO::titre('{{TITRE}}');
MO::css(THEMEUSE, true);
MO::js(src: 'https://code.jquery.com/jquery-3.6.0.min.js');
MO::corp();
MO::debutDiv(id: 'page');
if (MO::session('utilisateur', 'inscript')) {
// finir ici : si utilisateur inscrit
} else {
MO::debutHeader('TITRE');
MO::debutDiv(id: 'colone_menu');
MO::boutton_ajustable(
texte: '',
image: 'svg/fi-rr-chart-tree.svg',
class: 'logo_boutton_ajustable',
theme: THEMEUSE,
lien: '',
injecter: ['tag' => 'img', 'injecter' => 'test_dinjection']
);
...
bon c'est un petit exemple rapide et dans un éditeur avec de la couleur il y aura une bonne lisibilité.
alors bon là c'est un exemple il en existe une multitude d’approche et d’utilisation de PHP je te partage mon style.
c'est ma vision de PHP mais c'est peut être pas ainsi que d'autre personnes travail.
en espérant que cela t'aide

[PHP][/PHP]je répond pas vaiment à ton sujet mais je te propose un regex plus simple pour ta fonction IsEmail :
[PHP]$re = '/([[:ascii:]]*)\@([[:ascii:]]*)\.(\w+)/';
$str = '
[email protected]';
preg_match($re, $str, $matches, PREG_OFFSET_CAPTURE, 0);
// Print the entire match result
var_dump($matches);[/PHP]
ça prend en charge les . - et _ et ça récup chaque partie mais à toit de tester
---
j'ai pas trop le temps de tout revoir dans ton code.
mais déjà je te donne des conseils qui sont plus dans mon style technique de codage
ça ne veux pas dire que tous les Dev PHP seront d'accord avec moi. mais tu auras une
Idée de comment certain travail.
0 - on ne mélange pas les torchons et les serviettes et encore moins les torchons-serviette :)
1 - déjà pour moi je ne mélange jamais, jamais, jamais du HTML et du PHP
ou tu as une page PHP qui produit du HTML ou tu as du HTLM Pure sans PHP
donc en amont c'est une page PHP et elle va générer du HTML.
2 - après pour la lisibilité j'utilise les Monades on est dans du Design pattern enfin c'est l'idée est là et là encore comme dans le premier point
on ne met pas de HTML dans du PHP et tu vas me dire mais ou on va foutre les balises à un moment je dois bien mettre <truc muche
c'est justement là qu'intervient les Monades si tu veux c'est comme encapsuler du texte ou du contenu voila un exemple
[PHP] private function endtag($tag, $value)
{
return ["</$tag>", $value[1]];
}
private function startHTML($value, $injection, $arbre_noms, $argument, $no_aid)
{
return $this->gentag('html', $value, $argument);
}[/PHP]
du coup tu peux fabriqué des balises que tu vas construire mais dans ton php ou une page dédier à cela.
3 - la réponse est oui je reviens au point 1 il existe pour moi 1 seul cas de figure ou j'ai le droit de mélanger du HTML et du PHP
c'est une page contenant du code générer par php. il y a des étapes aussi à respecter quand on produit un contenu.
produit -> stocker->mise en ligne 3 étape différentes. la page mise en ligne c'est la v1 visible par le client qui est sur la page.
la version stocker c'est possible que ça soit la V2 non visible encore et quand ça le sera le V1 sera écrasé.
c'est pour cela qu'on en arrive à donné la capacité à php de produire du contenu qui peut mélanger du php et du html.
mais c'est purement par finalité du genre toi jamais tu vas y mettre les mains. tu ne travail que coté PHP et jamais jamais jamais tu n'écris une balise HTML <truc muche> non comme plus haut tu as déjà une fonction qui fabrique tes balises.
tout cela c'est de l'automatisation et tu retrouve ce genre de concept dans beaucoup de framework.
est donc c'est bien ? oui pour la lisibilité et la maintenance du code.
maintenant pareil la page qui va contenir ce code PHP et qui va produire du HTML en usant de tout les avantage de PHP
on ne la mélange pas avec du pure code PHP aussi on va lui dédier une page à elle avec un nom spécifique du genre : interface_1_page.php (le _page mais ça peut être un autre nom ) sera là pour reconnaitre que c'est du code spécifique à la production d'un contenu HTML
bon alors à quoi ça ressemble des Monades du PHP qui produit du html : voici un exemple rapide
[PHP]
use Eukaruon\configs\CMD;
use Eukaruon\modules\Modules_actions as AC;
use Eukaruon\modules\Modules_objets as MO;
use Eukaruon\pilote;
define('THEMEUSE', 'grey');
AC::debutTempTest();
MO::doctype();
MO::tete();
MO::meta(['charset' => 'UTF-8']);
if (MO::session('utilisateur', 'inscript'))
MO::autoload('page_produits');
MO::titre('{{TITRE}}');
MO::css(THEMEUSE, true);
MO::js(src: 'https://code.jquery.com/jquery-3.6.0.min.js');
MO::corp();
MO::debutDiv(id: 'page');
if (MO::session('utilisateur', 'inscript')) {
// finir ici : si utilisateur inscrit
} else {
MO::debutHeader('TITRE');
MO::debutDiv(id: 'colone_menu');
MO::boutton_ajustable(
texte: '',
image: 'svg/fi-rr-chart-tree.svg',
class: 'logo_boutton_ajustable',
theme: THEMEUSE,
lien: '',
injecter: ['tag' => 'img', 'injecter' => 'test_dinjection']
);
...
[/PHP]
bon c'est un petit exemple rapide et dans un éditeur avec de la couleur il y aura une bonne lisibilité.
alors bon là c'est un exemple il en existe une multitude d’approche et d’utilisation de PHP je te partage mon style.
c'est ma vision de PHP mais c'est peut être pas ainsi que d'autre personnes travail.
en espérant que cela t'aide :D