将 javascript 注入我的应用程序的更好方法是什么?

发布于 2024-09-08 19:19:59 字数 790 浏览 2 评论 0原文

根据用户的偏好,我将 jason_encoded(翻译数组)注入到我的应用程序中,稍后将其转换为 javascript 对象并由应用程序使用。您认为哪种方法更好?

解决方案1:

<head>
   <script type="text/javascript" src="lang.php"></script>
</head>

解决方案2(代码在index.php中执行):

<head>
       <?php
           require_once(database_connect.php);
           //Prepare $myDictionary...

           $dictionary = json_encode($myDictionary);
           echo ("
              <script type='text/javascript'>
                 var dictionary=". $dictionary .";
              </script>
           ");

           require_once(database_close.php);
       ?>
</head>

我目前正在使用第一个解决方案,因为我可以缓存结果,但我想知道是否将所有php代码(包括require/include函数) )在index.php中是好是坏。感谢您的任何建议。

Based on user's preferences I inject into my application a jason_encoded(translation array) which is later converted to javascript object and used by the application. Which, in your opinion, is the better way to do it?

Solution 1:

<head>
   <script type="text/javascript" src="lang.php"></script>
</head>

Solution 2 (code is executed inside index.php):

<head>
       <?php
           require_once(database_connect.php);
           //Prepare $myDictionary...

           $dictionary = json_encode($myDictionary);
           echo ("
              <script type='text/javascript'>
                 var dictionary=". $dictionary .";
              </script>
           ");

           require_once(database_close.php);
       ?>
</head>

I'am currently using the first solution, because I can cache the results, but I wan't to know if putting all that php code (including require/include functions) inside index.php is good or bad idea. Thanks for any suggestions.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

孤凫 2024-09-15 19:19:59

将 HTML 标签作为字符串回显(例如 echo "

...

")通常是使用 PHP 的不好方法。使用替代语法并避免过多混合 PHP 和 HTML 。为了更接近 MVC 方法,它应该看起来像这样。

<?php

require_once(database_connect.php);
$dictionaryJSON = json_encode($myDictionary);
require_once(database_close.php);

// end of controller, begin of view
?>
<head>
    <script type='text/javascript'>
        var dictionary=<?php echo $dictionaryJSON ?>;
    </script>
</head>

你的第一种方法看起来也不错,特别是当你需要缓存时。

Echoing HTML tags as strings (e.g. echo "<p>...</p>") is usually a bad way of using PHP. Use alternative syntax and avoid mixing too much of PHP and HTML. To be closer to MVC-approach it should look like this.

<?php

require_once(database_connect.php);
$dictionaryJSON = json_encode($myDictionary);
require_once(database_close.php);

// end of controller, begin of view
?>
<head>
    <script type='text/javascript'>
        var dictionary=<?php echo $dictionaryJSON ?>;
    </script>
</head>

And your first way looks also good, especially when you need to cache.

怕倦 2024-09-15 19:19:59

我会选择第一个版本 - 它看起来更整洁并且将东西分开。

I would go with version one - it just looks tidier and separates stuff.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文