2010-09-01 21 views
1
<?php 
    class Student { public $name = "Benjamin"; } 
    $name = new Student(); 
?> 

<p>Hello, there. My name is <?php $name->name ?></p> 

Le code ci-dessus ne fonctionne pas comme prévu (en imprimant le nom dans les balises "p"). Mais le code ci-dessous, bien sûr, fonctionne:La balise de fermeture PHP détruit-elle une classe (objet) instanciée?

<?php 
class Student { public $name = "Benjamin"; } 
$name = new Student(); 

echo '<p>Hello, there. My name is ' . $name->name . '</p>'; 
?> 

la classe est destructed lors de la fermeture des balises PHP?

Existe-t-il une solution de rechange pour le deuxième exemple de code?


Merci, comme toujours.

+0

Pour que je ne commente pas chaque réponse ici, considérez ceci pour tout le monde en particulier: "Qu'est-ce que tu as?" Pourquoi personne n'a encore répondu "Dumbass"? : P – nush

+0

Peut-être parce que vous n'avez pas accepté de réponse et qu'ils ont peur de celui que vous allez choisir;) –

Répondre

7

Votre oublié de faire écho $name->name, de sorte que votre code doit ressembler à:

<p>Hello, there. My name is <?php echo $name->name ?></p> 
6

Ne pas oublier les echo dans

<p>Hello, there. My name is <?php echo $name->name ?></p> 

la classe est détruite lors fermeture des balises PHP ?

Pas

2

vous manque un écho avant le nom $, il devient:

<?php echo $name->name; ?>

1

Je ne l'ai pas touché PHP depuis longtemps mais,

  • non ce n'est pas
  • serait <?php $name->name ?> y l'imprimer?