php - 在 Javascript 中使用 PHP?缩小网址

标签 php javascript

我做了一个 url 收缩器,我目前有一个 Soundcloud Javascript API 可以输出歌曲的 url 链接。我想用我的收缩器收缩它。收缩器使用这个工作:

<?php echo $bitly->shorten('http://google.com'); ?> //Equals google.com in short url format

我试图在其中实现它的 javascript 代码是这样的:我将继续并向您提供我已经尝试过的方法,但是没有用。

在我编辑之前:

 container.find('span.player-actions').html(
                '<a href="' + track.user.permalink_url + '" target="_blank">Soundcloud</a> | <a href="' + track.permalink_url + '/download" target="_blank">Download</a>'
        );

在我尝试之后:

container.find('span.player-actions').html(
                '<a href="' +  <?php echo $bitly->shorten('track.user.permalink_url'); ?> + '" target="_blank">Soundcloud</a> | <a href="' + track.permalink_url + '/download" target="_blank">Download</a>'
        );

任何建议,我都乐于接受。并且很乐意让这项工作成功!

最佳答案

这已经解释过了,但如果您是这个概念的新手,这里有一个简化的解释。

<?php代码中的标记在您的页面发送到用户浏览器之前在服务器上进行处理。实际上浏览器永远不会收到这些标签 - 它们被替换为服务器上的 PHP 输出,然后将生成的页面发送给用户。

由于某些错误,有时 PHP 代码会进入用户的浏览器,但它的行为与任何其他非标准标签一样 - 内容介于 <?php 之间。和 ?>访问者将看不到。

另一方面,JavaScript 在用户浏览器中运行(在我们的例子中)PHP 已经输出的内容。当您使用 JavaScript 更改页面时,它不会发送回服务器 - 实际上,服务器完全不知道这一点,因此它无法执行您通过 JavaScript 输出的 PHP 代码。

为了获得类似的结果,您需要从 JavaScript 代码发送 AJAX 请求。它基本上是由您的 JavaScript 发起的另一个“页面请求”,但在后台发生,PHP 输出不会替换您的当前页面,而是进入您的 JavaScript 代码。通过这种方式,您的 JavaScript 将输出 PHP output 而不是 PHP code,这就是它成为可能的原因。

关于php - 在 Javascript 中使用 PHP?缩小网址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13521371/

相关文章:

javascript - Mobile-Web-App : keeping huge data in json-string vs. 对象与本地存储

javascript - mongoose:如何循环包含对象引用(_id)的数组

php - Codeigniter 未设置 session

php - 无法规范化属性 "timezone",因为注入(inject)的序列化程序不是规范化程序

javascript - 文件夹中的图像作为 JavaScript 变量

javascript - display.html typescript 不工作

javascript - 寻找算法来找到颜色区域的边界

c# - 从 observableArray 中删除元素

php - 从多个表中删除不起作用

php - 使用 PDO,有没有办法处理两个驱动程序之间的事务?