Форум программистов, компьютерный форум, киберфорум
Наши страницы
PHP
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
Ultran
3 / 3 / 2
Регистрация: 15.09.2012
Сообщений: 86
#1

Ошибка при использовании print <<<HERE HERE;

16.08.2013, 16:39. Просмотров 860. Ответов 4
Метки нет (Все метки)

Здравствуйте!
Помогите пожалуйста решить мучающую меня проблему.
При использовании конструкции print<<<HERE HERE; выдается ошибка "Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in Z:\home\test1.ru\www\index.php on line 39".
Вот код:
PHP
1
2
3
4
5
print <<<HERE
if (!empty($_SESSION['login']) or !empty($_SESSION['id'])){
echo "Здравствуйте, <b>".$_SESSION['login']."</b> (<a href='exit.php'>выход</a>)<br><br>";
}
HERE;
Заранее спасибо!

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.08.2013, 16:39
Ответы с готовыми решениями:

Ошибка в PHP, при использовании fpdf библиотеки
Всем привет. Настигла меня одна проблема. Я работаю с fpdf библиотекой. И...

Ошибки при использовании header'а
Собственно сама проблема: Имеется два файла, один со скриптом а второй в...

Символы и строки возникающие при использовании require_once
Приветствую Всех! Прошу помочь мне с одной проблемой, а именно: При...

Ошибка при использовании поиска
Добрый день столкнулся с ошибкой при поиске но не могу понять в чем ошибка...

Ошибка при использовании функции mail
Добрый день! Есть хостинг с сайтом на домене reg.ru. Необходимо сделать форму...

4
Horhes
8 / 8 / 0
Регистрация: 23.02.2011
Сообщений: 65
16.08.2013, 19:46 #2
Во-первых, непонятно, зачем это здесь было использовано.
Во-вторых, по-моему пишется HEREDOC, непосредственно в самом выводе, т.е. сразу после "echo"
В-третьих, "print" здесь совершенно лишний.
Попробуте
PHP
1
2
3
4
if (!empty($_SESSION['login']) or !empty($_SESSION['id']))
{
echo <<<HEREDOC "Здравствуйте, <b>".$_SESSION['login']."</b> (<a href='exit.php'>выход</a>)<br><br>" HEREDOC;
}
0
NEbO
593 / 460 / 73
Регистрация: 22.01.2009
Сообщений: 1,180
Записей в блоге: 1
Завершенные тесты: 3
16.08.2013, 19:56 #3
print -- функция. HERE- и NOW- доки нельзя напрямую передать в функцию. это "особенность" грамматики языка. так же как это долгое время было с невозможностью записать такой код:
PHP
1
$a = aaa()[0]
даже если вызов aaa() всегда возвращал массив
0
Camaro396
38 / 38 / 13
Регистрация: 22.07.2013
Сообщений: 197
16.08.2013, 21:21 #4
Писать можно хоть
PHP
1
2
3
$a = <<<ZOPZOP
Hello wurld
ZOPZOP;
главное, чтобы закрывающий идентификатор шёл с начала новой строки, и сам текст должен начинаться с новой строки. Потрудидесь почитать ФМ
0
NEbO
593 / 460 / 73
Регистрация: 22.01.2009
Сообщений: 1,180
Записей в блоге: 1
Завершенные тесты: 3
16.08.2013, 21:57 #5
а, да. все таки я неправ. можно вот так вот:
PHP
1
2
3
4
5
6
7
function a($s){
    return $s;
}
echo a(<<<A
sadsadsaa
A
);
при этом скобку обязательно нужно с новой строки, иначе символ А не воспринимается как конец heredoc-а (судя по ошибке unexcpected enc of file -- проблема лексера).
а print -- все-таки конструкция, позволяет печатать одно выражение: https://github.com/php/php-src/blob/..._parser.y#L810 (обожаю эту грамматику)
просто точка с запятой не ставится. и все-таки это у меня сработало (вполть до 5.2):
PHP
1
2
3
print <<<A
sadsadsaa
A;
0
16.08.2013, 21:57
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.08.2013, 21:57

Ошибка 'unexpected T_SL' при использовании HEREDOC
Приветствую! Только начал осваивать пхп. Пишу простой код: ... 13 $s =...

Неизвестная ошибка при использовании стороннего движка игры
Здрастуйте я вообще нуб программист.Вот у меня возник вопрос мне друг отдал...

Ошибка syntax error, unexpected T_STRING при использовании namespace
Помогите пожалуйста. Parse error: syntax error, unexpected T_STRING in...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru