2014-12-24 6 views
1

Как я могу отобразить заголовок и описание с объекта $description в PHP? Объект содержит информацию, которая мне нужна, но я не смог ее отобразить в браузере.Извлечь информацию из php-объекта?

<?php 
require 'function.php'; 

connect(); 

$description = get_film_description($_GET ['film_id']); 

print_r($description); 

echo '<h1>{$description->title}</h1>'; 
echo '<p>{$description->description}</p>'; 
?> 

Выход print_r($description):

stdClass Object (
    [film_id] => 49 
    [description] => A Emotional Panorama of a Pioneer //And a Composer who must Escape a Mad Scientist in A Jet Boat 
    [title] => BADMAN DAWN 
) 

Выход в браузере:

<h1>{$description->title}</h1> 
<p>{$description->description}</p> 
+2

Используйте двойные кавычки по строкам, а не одинарные кавычки, как в ''

{$ description-> title}

"'. Одиночные кавычки не будут интерполировать переменные. Посмотрите на http://php.net/manual/en/language.types.string.php для различий ... –

+0

В противном случае все, что вы делаете, выглядит корректно. –

ответ

4

При использовании одинарных кавычек ваших строк, PHP не анализирует переменные. Вам нужно использовать двойной кавычек или concat, если вы хотите проанализировать переменные.

Например:

echo 'Hey $name'; //Output: Hey $name 

двойные кавычки:

echo "Hey $name"; //Output: Hey Joe 

Но лучший способ я думаю:

echo "Hey" . $name; //Output: Hey Joe 

Так что это будет делать работу:

echo "<h1>{$description->title}</h1>"; 

Как @TecBrat мне точку, лучше всего, если вы используете это:

echo "<h1>" . $description->title . "</h1>"; 

ПРИМЕЧАНИЕ

Почему я грустный, то третий лучший? Потому что, большинство из нас, разработчики используют IDE для редактирования нашего кода. Большинство IDE имеют подсветку синтаксиса. Итак, вы знаете, есть переменная, вы можете щелкнуть по ней и выделить все назначения, вы можете проверить с помощью IDE, установлена ​​ли эта переменная, вы можете нажать CTRL на том, что показывает вам, где вы ее инициализировали , покажите вам, есть ли больше заданий и т. д. Очень полезно.

+0

Я бы изменил ваш «лучший» ответ как «эхо» «Эй». $ Имя; // Вывод: Эй, Джо! », Если нет причины, по которой PHP должен разбирать строку« Привет ». Таким образом, OP будет использовать 'echo '

'. $ Description-> title. '

'; ' – TecBrat

+0

Спасибо, что указал мне это. Это более понятно. Я редактировал свой код. Счастливого Рождества! :) – vaso123

Смежные вопросы