Laravel: почему мой блейд-файл выдает неожиданный конец файла, когда присутствуют if, else и endif?Php

Кемеровские программисты php общаются здесь
Ответить Пред. темаСлед. тема
Гость
 Laravel: почему мой блейд-файл выдает неожиданный конец файла, когда присутствуют if, else и endif?

Сообщение Гость »

Я работаю над приложением Laravel, и у меня есть функция для экспорта PDF-файла, который создается на основе входных данных, отправленных пользователем в форму.

Я пытаюсь сделать содержимое этого PDF-файла условным на основе значения одной из переменных PHP, поэтому добавил условия @if, @else и @endif в блейд-файл, но по какой-то причине теперь появляется ошибка в консоли при попытке экспортировать PDF:


Ошибка синтаксического анализа: синтаксическая ошибка , неожиданный конец файла, ожидается elseif (T_ELSEIF) или else (T_ELSE) или endif (T_ENDIF) (Просмотр: /home/.../reminder.blade.php)

Файл Blade.php в настоящее время написан с помощью:

Код: Выделить всё



Provisional Reminder


@if(( count( $request->transactionItem ) == 1 ) && $request->transactionItem->currentStatusId == '1010')


if statement run in reminder.blade.php


@else

else statement run in reminder.blade.php

@endif


Они else и endif присутствуют, так почему же я получаю эту ошибку? Как я могу добиться условного отображения содержимого блейд-файла на основе значения переменной запроса?

Файл PDF генерируется функцией PHP:< /p>

Код: Выделить всё

private function generateProvPDF($transactions, $globalData)
{
$data = ['transactions' => $transactions, 'globalData' => $globalData];
//dd("transactions: ", $transactions);

//$view = \View::make('pdfs.reminder', $data);
//$contents = $view->render();

//echo $contents;
//die;

$pdf = \PDF::loadView('pdfs.reminder', $data)
->setOption('encoding', 'utf-8')
->setOption('margin-top', 0)
->setOption('margin-bottom', 0)
->setOption('margin-left', 0)
->setOption('margin-right', 0)
->setPaper('a4');

return $pdf->stream();
}
Изменить

Код в моем контроллере PHP, который вызывает эту функцию:

Код: Выделить всё

public function getSingleTransactionPDF(Request $request)
{
$transactionItem = $request->input('transactionItem');

$vTransactionItem = (array)DB::table('transaction.vTransactionPDF')->where('transactionItemId', $transactionItem['transactionItemId'])->first();

if (!empty($vTransactionItem))
{
$transactionItem = array_merge($transactionItem, $vTransactionItem);

$loggedInUser = auth()->user();
$globalData = $this->retrieveGlobalPDFData();
$transactionsData = $this->retrievePDFPrimaryLineItemData([$transactionItem], $loggedInUser);

dd("transactionsData, globalData: ", $transactionsData, $globalData);

return $this->generateProvTaxPDF($transactionsData, $globalData);
}
else
{
return response()->json([
'error' => true,
'message' => 'Transaction not found.',
], 404);
}
}
Если я закомментирую здесь строку dd("transactionsData ...", ...), я получу ошибку синтаксического анализа I уже упоминал выше. Однако, если я оставлю этот dd(), я увижу, что переменные содержат ожидаемые значения, и PDF-файл загружается, хотя на самом деле он не загружается, когда я пытаюсь его открыть - он появляется возникла ошибка.

Подробнее здесь: https://stackoverflow.com/questions/531 ... -else-endi
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Php»