Разрушает ли закрывающий тег PHP экземпляр класса (объект)? - PullRequest
1 голос
/ 01 сентября 2010
<?php
  class Student { public $name = "Benjamin"; }
  $name = new Student();
?>

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

Приведенный выше код не работает должным образом (печать имени в тегах "p").Но приведенный ниже код, конечно, работает:

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

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

Разрушается ли класс при закрытии тегов PHP?

Есть ли обходной путь для второго примера кода?


Спасибо, как всегда.

Ответы [ 4 ]

7 голосов
/ 01 сентября 2010

Вы забыли повторить $name->name, поэтому ваш код должен выглядеть так:

<p>Hello, there. My name is <?php echo $name->name ?></p>
6 голосов
/ 01 сентября 2010

Не забудьте echo в

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

Разрушается ли класс, когда закрытие тегов PHP?

нет

Нет

2 голосов
/ 01 сентября 2010

Вы пропускаете эхо перед $ name, поэтому оно становится:

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

1 голос
/ 01 сентября 2010

Я давно не трогал PHP, но,

  • нет, не
  • действительно ли <?php $name->name ?> напечатает его?
...