gpt4 book ai didi

php - 在哪里 Hook 以更改 Laravel 5 中的 View 输出?

转载 作者:搜寻专家 更新时间:2023-10-31 21:30:43 24 4
gpt4 key购买 nike

对于某种输出过滤器,我需要访问最终呈现的输出字符串,其中包括 View 数据以及 View 文件中的“硬编码”文本。

例如:

welcome.blade.php

<div>This is bad and you are {{ $variable }}</div>

Controller 、 Composer 或其他附加变量的东西

view()->with('variable', 'bad')

最终输出为

<div>This is bad and you are bad</div>

但现在让我们假设我们想要用“好”替换每个“坏”实例,所以我们得到:

<div>This is good and you are good</div>

改变 View 数据得到很好的支持,但是如何将一些改变逻辑应用到完全呈现的内容? (因为我认为这是同时更改 View 文件本身内容的唯一方法?)

注意:如果且仅当可能,我更喜欢“ Hook ”解决方案而不是“扩展核心”解决方案..

最佳答案

看看 CompilerEngine(Illuminate\View\Engines\CompilerEngine)。您可以使用它通过 get 方法获取 View 的评估内容。也许将其与注册的 ServiceProvider 结合起来以操纵 View 内容。另请查看 BladeCompiler,也许您可​​以将它们结合起来。

但尝试更改硬编码文本似乎有点奇怪。为什么不首先使用变量。我的意思是,如果您想事后更改它,为什么要对其进行硬编码?

关于php - 在哪里 Hook 以更改 Laravel 5 中的 View 输出?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30346170/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com