Php 从服务器上的外部源将Javascript写入页面

Php 从服务器上的外部源将Javascript写入页面,php,file,Php,File,我已经搜索了一段时间了,虽然我的问题似乎比其他人发布的类似问题容易得多,但我仍然找不到解决方案 我想要一个数组来填充.txt文件中的内容。这个问题与其他人的问题相反,我不必对txt文件的内容做任何处理,因为它已经是[1,2,3],[a,b,c]。。。等等,所以我唯一想做的就是在 在和之间,有: var locations = [ *contents of the txt file should go here* ]; 就这样!有没有办法从txt文件中获取内容并用javascript打印出来?假

我已经搜索了一段时间了,虽然我的问题似乎比其他人发布的类似问题容易得多,但我仍然找不到解决方案

我想要一个数组来填充.txt文件中的内容。这个问题与其他人的问题相反,我不必对txt文件的内容做任何处理,因为它已经是[1,2,3],[a,b,c]。。。等等,所以我唯一想做的就是在

在和之间,有:

var locations = [
*contents of the txt file should go here*
];

就这样!有没有办法从txt文件中获取内容并用javascript打印出来?

假设您在浏览器上下文中使用javascript,这是不可能的。安全限制阻止在浏览器中运行的脚本访问主机的文件系统

编辑:好评论,伙计们!如果您能够使用HTML5,那么您就可以使用FileAPI草稿标准来访问一些文件

Paul S提供了这个jsbin,它演示了:

理想情况下,您需要将文本文件转换为JSON格式,然后使用FileAPI从磁盘读取字符串。从这里开始,只需locations=JSON.parsefileText

编辑:那么,如果文本文件位于PHP站点上的目录中,为什么不使用PHP读取文件并按照OP中的指示写入数据呢


这里的问题是,您仍然希望输入文件是有效的JSON-[1,2,3],[a,b,c]不是。对{foo:[A,b,c],bar:[1,2,3]}稍加修改即可。请注意,我甚至不会提到使用eval,因为。。。是的,这是邪恶的。不要使用它:

假设您在浏览器上下文中使用javascript,这是不可能的。安全限制阻止在浏览器中运行的脚本访问主机的文件系统

编辑:好评论,伙计们!如果您能够使用HTML5,那么您就可以使用FileAPI草稿标准来访问一些文件

Paul S提供了这个jsbin,它演示了:

理想情况下,您需要将文本文件转换为JSON格式,然后使用FileAPI从磁盘读取字符串。从这里开始,只需locations=JSON.parsefileText

编辑:那么,如果文本文件位于PHP站点上的目录中,为什么不使用PHP读取文件并按照OP中的指示写入数据呢

这里的问题是,您仍然希望输入文件是有效的JSON-[1,2,3],[a,b,c]不是。对{foo:[A,b,c],bar:[1,2,3]}稍加修改即可。请注意,我甚至不会提到使用eval,因为。。。是的,这是邪恶的。不要使用它:

使用访问用户在其本地计算机上选择的文件,也就是说,您可以通过以下操作实现所需的操作:

请注意,这是事件驱动的,因此您必须使用回调。

使用访问用户在其本地计算机上选择的文件,也就是说,您可以通过以下操作实现所需的操作:


请注意,这是事件驱动的,因此您必须使用回调。

首先,请原谅我没有详细描述问题。我已经找到了解决问题的方法,我是一个新手,不是一个优秀的程序员,但我会尽力解释答案

首先,问题是: 我有一个php页面,页面上有一些javascript代码。在该javascript中,我希望从txt文件加载内容。txt文件中的确切文本为:

var locations = [
['a', 123, 456, 'foo', 'bar'],
[...],
['b', 456, 789, 'bar', 'foo'],
];
我知道这并不是一个很好的解决方案,我知道var位置[];部分应该在javascript中,而不是在txt文件中,但这对我来说很好

解决方案: 在javascript中,我将文本文件的内容放在我想要显示的地方,就这样

它解决我的问题的原因是因为我必须频繁地更新位置数组,并且代码出现在大约30页上。我不想在有新位置时更新这些页面的所有部分,所以我想在javascript中添加一些代码,从外部文件获取位置。现在我只需要更新一个文件


再一次,我意识到我没有用一种清晰的方式描述我的问题,但是我希望其他有同样问题的人可以使用这个解决方案

首先,请原谅我没有详细描述这个问题。我已经找到了解决问题的方法,我是一个新手,不是一个优秀的程序员,但我会尽力解释答案

首先,问题是: 我有一个php页面,页面上有一些javascript代码。在该javascript中,我希望从txt文件加载内容。txt文件中的确切文本为:

var locations = [
['a', 123, 456, 'foo', 'bar'],
[...],
['b', 456, 789, 'bar', 'foo'],
];
我知道这并不是一个很好的解决方案,我知道var位置[];部分应该在javascript中,而不是在txt文件中,但这对我来说很好

解决方案: 在javascript中,我已经 把我想要的文本文件的内容显示的地方,就是这样

它解决我的问题的原因是因为我必须频繁地更新位置数组,并且代码出现在大约30页上。我不想在有新位置时更新这些页面的所有部分,所以我想在javascript中添加一些代码,从外部文件获取位置。现在我只需要更新一个文件



再一次,我意识到我没有用一种清晰的方式描述我的问题,但是我希望其他有同样问题的人可以使用这个解决方案

是否需要从网站或用户计算机读取该文本文件?如果该文本文件是托管的,则可以执行XHR请求以检索数据,然后填充数组。但是,这可能很有用,您需要HTML5您需要从网站或用户计算机读取该文本文件吗?如果该文本文件是托管的,则您可以执行XHR请求来检索数据,然后填充数组。但是,这可能很有用,你需要HTML5,当你发表评论时,我已经在编辑添加FS而不是OS,你比我更厉害!现有的安全块甚至适用于HTML5AFAIK,除非您希望获得语义并调用indexedDB或localstorage“文件系统”访问:Phuh。我不知道那件事。有浏览器实现过FileAPI吗?很好。我将假设OP打算从FS中读取脚本域的外部文件或任意文件,而不是安全沙箱中的文件。FileAPI允许这种情况吗?在这里,您可以将用户选择的任何文件的内容读取到文本区域(抱歉,没有提及);javascript和txt文件都是服务器端的!这就更容易了?当你发表评论时,我已经在编辑添加FS而不是OS了-你比我更厉害!现有的安全块甚至适用于HTML5AFAIK,除非您希望获得语义并调用indexedDB或localstorage“文件系统”访问:Phuh。我不知道那件事。有浏览器实现过FileAPI吗?很好。我将假设OP打算从FS中读取脚本域的外部文件或任意文件,而不是安全沙箱中的文件。FileAPI允许这种情况吗?在这里,您可以将用户选择的任何文件的内容读取到文本区域(抱歉,没有提及);javascript和txt文件都是服务器端的!这使它更容易?没问题-作为一个有效的程序员,很大一部分是学习如何概念化和清楚地表达这个概念。不幸的是,就像许多生活技能一样,它实际上只是伴随着努力工作和练习而来的。很高兴您找到了解决方案,欢迎来到社区!没问题——作为一个有效的程序员,很大一部分是学习如何概念化和清晰地表达这个概念。不幸的是,就像许多生活技能一样,它实际上只是伴随着努力工作和练习而来的。很高兴您找到了解决方案,欢迎来到社区!