webman视图模板引用公共文件时,公共文件变量无法赋值
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<title><?= $title?></title>
<?php element('/front/view/front/head.html')?>
</head>
<body>
<?php element('/front/view/front/header.html')?>
<div class="wrapper cf">
<div class="errorpage">
<i class="iconfont"></i> <?= $message?>
</div>
</div>
</body>
</html>
<div class="header">
<div class="wrapper">
<?php var_dump($login);?>
<?php if (isset($login) && $login){?>
<img class="<?= $logocss?>" src="<?= $logo_url?>"
alt="<?= $company_name?>"/>
<span><?= $person_info?:''?></span>
<?php }?>
</div>
</div>
function element($file = '')
{
return include app_path() . $file;
}
ErrorException: Undefined variable $login in D:\work\Talentscan\project\code\DataTalk\branches\talent_review\app\front\view\front\header.html:3
Stack trace:
#0 D:\work\Talentscan\project\code\DataTalk\branches\talent_review\app\front\view\front\header.html(3): {closure:D:\work\Talentscan\project\code\DataTalk\branches\talent_review\support\bootstrap.php:31}(2, 'Undefined varia...', 'D:\\work\\Talents...', 3)
#1 D:\work\Talentscan\project\code\DataTalk\branches\talent_review\app\functions.php(549): include('D:\\work\\Talents...')
#2 D:\work\Talentscan\project\code\DataTalk\branches\talent_review\app\front\view\index\index.html(8): element('/front/view/fro...')
#3 D:\work\Talentscan\project\code\DataTalk\branches\talent_review\vendor\workerman\webman-framework\src\support\view\Raw.php(71): include('D:\\work\\Talents...')
#4 D:\work\Talentscan\project\code\DataTalk\branches\talent_review\vendor\workerman\webman-framework\src\support\helpers.php(251): support\view\Raw::render('index/index', Array, 'front', '')
#5 D:\work\Talentscan\project\code\DataTalk\branches\talent_review\app\front\controller\IndexController.php(119): view('index/index', Array)
#6 D:\work\Talentscan\project\code\DataTalk\branches\talent_review\vendor\workerman\webman-framework\src\App.php(336): app\front\controller\IndexController->renderLandingPage(Object(support\Request), '1t', 'dw')
#7 D:\work\Talentscan\project\code\DataTalk\branches\talent_review\vendor\workerman\webman-framework\src\App.php(359): Webman\App::{closure:Webman\App::getCallback():334}(Object(support\Request), '1t', 'dw')
#8 D:\work\Talentscan\project\code\DataTalk\branches\talent_review\app\middleware\AuthCheck.php(39): Webman\App::{closure:Webman\App::getCallback():357}(Object(support\Request))
#9 D:\work\Talentscan\project\code\DataTalk\branches\talent_review\vendor\workerman\webman-framework\src\App.php(352): app\middleware\AuthCheck->process(Object(support\Request), Object(Closure))
#10 D:\work\Talentscan\project\code\DataTalk\branches\talent_review\app\middleware\BasicCheck.php(70): Webman\App::{closure:{closure:Webman\App::getCallback():349}:350}(Object(support\Request))
#11 D:\work\Talentscan\project\code\DataTalk\branches\talent_review\vendor\workerman\webman-framework\src\App.php(352): app\middleware\BasicCheck->process(Object(support\Request), Object(Closure))
#12 D:\work\Talentscan\project\code\DataTalk\branches\talent_review\vendor\workerman\webman-framework\src\App.php(150): Webman\App::{closure:{closure:Webman\App::getCallback():349}:350}(Object(support\Request))
#13 D:\work\Talentscan\project\code\DataTalk\branches\talent_review\vendor\workerman\workerman\src\Connection\TcpConnection.php(670): Webman\App->onMessage(Object(Workerman\Connection\TcpConnection), Object(support\Request))
#14 D:\work\Talentscan\project\code\DataTalk\branches\talent_review\vendor\workerman\workerman\src\Events\Select.php(408): Workerman\Connection\TcpConnection->baseRead(Resource id #183)
#15 D:\work\Talentscan\project\code\DataTalk\branches\talent_review\vendor\workerman\workerman\src\Worker.php(1602): Workerman\Events\Select->run()
#16 D:\work\Talentscan\project\code\DataTalk\branches\talent_review\vendor\workerman\workerman\src\Worker.php(1527): Workerman\Worker::forkWorkersForWindows()
#17 D:\work\Talentscan\project\code\DataTalk\branches\talent_review\vendor\workerman\workerman\src\Worker.php(593): Workerman\Worker::forkWorkers()
#18 D:\work\Talentscan\project\code\DataTalk\branches\talent_review\runtime\windows\start_webman.php(33): Workerman\Worker::runAll()
#19 {main}
Workerman/5.1.1 PHP/8.4.6 (Jit off) Windows NT/10.0
/vendor/workerman/webman-framework/src/support/view/Raw.php
参考这个文件的
render
函数自己写一个只incloud template不执行return的函数,我是这样解决的,不知道有没有更好的方法。。。