Comment utiliser correctement les modèles PHP
P粉738346380
P粉738346380 2024-02-17 19:44:27
0
1
320

Je suis nouveau sur PHP et je lis actuellement le livre "PHP pour les débutants absolus". Le livre enseigne actuellement la création de modèles et l'utilisation d'objets StdClass() pour éviter les conflits de noms.

J'ai un fichier modèle appelé page.php et un fichier de page d'accueil appelé index.php.

Ma page.code php

<?php
return "<!DOCTYPE html>
<html>
<head>  
<title>$pageData->title</title>
<meta http-equiv='Content-Type' content='text/html;charset=utf-8'/>
</head>
<body>
$pageData->$content
</body>
</html>";

mon index.php

<?php
//this correctly outputs any errors 
error_reporting( E_ALL );
ini_set("display_errors", 1);

$pageData = new stdClass();

$pageData->title = "Test title";
$pageData->content = "<h1>Hello World</h1>";
$page = include_once "templates/page.php";
echo $page;

L'erreur que j'ai reçue est

Attention : variable non définie $title dans C:xampphtdocsch2templatespage.php à la ligne 5

Attention : variable non définie $content

dans C:xampphtdocsch2templatespage.php à la ligne 9

Je ne comprends pas cela car c'est exactement ce que le livre enseigne, toute aide serait grandement appréciée et s'il existe une meilleure façon d'utiliser les modèles, n'oubliez pas que je suis un débutant, alors restez simple !

P粉738346380
P粉738346380

répondre à tous(1)
P粉129168206

Votre page.php a l'air un peu bizarre. return Ce n'est pas quelque chose que j'utilise lors de l'impression de HTML. De plus, vous utilisez php et html dans la balise php, ce qui ne fonctionnera pas. Essayez ceci :


  

<?php echo $pageData->title; ?>



content; ?>

Pas besoin de echo $page dans votre index.php, laissez page.php le faire.

/EDIT : Il y avait aussi une faute de frappe à la ligne 9 : $pageData->$content; Je l'ai corrigée.

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal