Tableau de chaînes
Exemple :
Dans le dossier fonctions, ajoutez le fichier chaines.php
Réalisez les fonctions du fichier.
1
2
3
$tableau = (string)($_POST['tableau'] ?? '');
4
$tab = explode(',', $tableau);
5
$nombre1 = (int)($_POST['nombre1'] ?? 0);
6
$nombre2 = (int)($_POST['nombre2'] ?? 0);
7
$nombre3 = (int)($_POST['nombre3'] ?? 0);
8
9
// retourne la somme des tailles des mots : sommeTailles(['aa', 'bb']) => 4
10
function sommeTailles()
11
{
12
}
13
14
// retourne le plus long mot : plusLong(['aaa','bb']) => 'aaa'
15
function plusLong()
16
{
17
}
18
19
// retourne l'emplacement du plus court : plusCourt(['aaa','bb']) => 1
20
function plusCourt()
21
{
22
}
23
24
25
// retourne les mots plus longs que nombre caractères : motsPlusLongs(['a','bb','ccc'] ,1) => 'bb,ccc'
26
function motsPlusLongs()
27
{
28
}
29
30
// Echange l'emplacement des mots nombre1 et nombre2 => echangeMots(['a','b','c'], 0, 2) => ['c','b','a']
31
function echangeMots()
32
{
33
}
34
35
36
$exo1Afficher = sommeTailles($tab);
37
$exo2Afficher = plusLong($tab);
38
$exo3Afficher = plusCourt($tab);
39
$exo4Afficher = motsPlusLongs($tab, $nombre1);
40
$exo5Afficher = echangeMots($tab, $nombre1, $nombre2);
41
42
43
44
45
<html lang="fr">
46
47
<head>
48
<title>PHP Fonctions Chaines</title>
49
<meta charset="UTF-8" />
50
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/5.0.0-alpha1/css/bootstrap.min.css" integrity="sha384-r4NyP46KrjDleawBgD5tp8Y7UzmLA05oM1iAEQ17CSuDqnUK2+k9luXQOfXJCJ4I" crossorigin="anonymous">
51
</head>
52
53
<body>
54
55
<form action="" method="post">
56
<div class="m-3 p-3 row bg-secondary">
57
<p>Entrer les variables</p>
58
<div class="col-3 input-group mb-3">
59
<span class="input-group-text">Tableau de mots</span>
60
<input type="text" name="tableau" value="= $tableau; " class="form-control" />
61
</div>
62
<div class="col input-group mb-3">
63
<span class="input-group-text">Nombre1</span>
64
<input type="text" name="nombre1" value="= $nombre1; " class="form-control" />
65
</div>
66
<div class="col input-group mb-3">
67
<span class="input-group-text">Nombre2</span>
68
<input type="text" name="nombre2" value="= $nombre2; " class="form-control" />
69
</div>
70
<div class="col input-group mb-3">
71
<span class="input-group-text">Nombre3</span>
72
<input type="text" name="nombre3" value="= $nombre3; " class="form-control" />
73
</div>
74
<div class="col-auto">
75
<button type="submit" class="btn btn-primary">Soumettre</button>
76
</div>
77
</div>
78
79
<div class="m-3 p-3 row bg-secondary">
80
<p>Affiche la somme des tailles des mots</p>
81
82
<div class="col">
83
<input type="text" value="= $exo1Afficher; " class="form-control" readonly />
84
</div>
85
</div>
86
87
<div class="m-3 p-3 row bg-secondary">
88
<p>Affiche le plus long mot</p>
89
90
<div class="col">
91
<input type="text" value="= $exo2Afficher; " class="form-control" readonly />
92
</div>
93
</div>
94
95
<div class="m-3 p-3 row bg-secondary">
96
<p>Affiche l'emplacement du plus court</p>
97
<div class="col input-group mb-3">
98
<input type="text" value="= $exo3Afficher; " class="form-control" readonly />
99
</div>
100
</div>
101
102
<div class="m-3 p-3 row bg-secondary">
103
<p>Affiche les mots plus longs que nombre1 caractères</p>
104
<div class="col input-group mb-3">
105
<input type="text" value="= $exo4Afficher; " class="form-control" readonly>
106
</div>
107
</div>
108
109
<div class="m-3 p-3 row bg-secondary">
110
<p>Echange l'emplacement des mots nombre1 et nombre2, et affiche le tableau</p>
111
<div class="col input-group mb-3">
112
113
var_dump($exo5Afficher);
114
</div>
115
</div>
116
</form>
117
118
</body>