gpt4 book ai didi

php - 我可以将所需文件的全部内容存储在 JavaScript 变量中吗?

转载 作者:行者123 更新时间:2023-11-28 20:52:49 25 4
gpt4 key购买 nike

这似乎是一个奇怪的问题。也许这也是错误的做法。但我必须这样做:

  • 页面上有几个菜单项
  • 每个页面的内容存储在一些.phtml中文件
  • 页面加载时显示默认内容(使用 require )
  • 所有其他内容也应该加载并存储在 JavaScript 数组中
  • 当用户点击链接时,内容就会交换

问题是:

  • 不应使用 AJAX
  • 为了良好的旧式 SEO,所有内容都不能在开头附加

所有部分都很简单,除了:如何将内容放入 JavaScript 数组中。类似 content.push('<?php print require 'page.phtml'; ?>');当然不起作用,因为它会返回一个多行字符串,这不适用于 JavaScript。欢迎所有想法。也许我忽略了一些非常简单的事情。

最佳答案

<script>
<?php

ob_start();
require 'page.phtml';
$contents = ob_get_clean();

echo "var content = ".json_encode($contents);
?>
</script>

如果您的 page.phtml 文件中没有 php 代码,您可以让它变得更简单

<script>
<?php
echo "var content = ".json_encode(file_get_contents('page.phtml'));
?>
</script>

显然你也可以这样使用它:

echo "content.push(".json_encode($contents).");";

为什么不运行

<?php
function json_require($filepath) {
ob_start();
require($filepath);
return json_encode(ob_get_clean());
}
?>
...
content.push(<?=json_require('page_1.phtml');?>);
content.push(<?=json_require('page_2.phtml');?>);
content.push(<?=json_require('page_3.phtml');?>);
content.push(<?=json_require('page_4.phtml');?>);

关于php - 我可以将所需文件的全部内容存储在 JavaScript 变量中吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12120740/

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