php如何引用当前文档?

时间:2012-04-06 06:43:19

标签: php document

我的网页允许用户从下拉列表中选择项目并拥有一个表格。 Javascript打印出javascript创建的新表行中的每个dropdown-list-item(加上javascript从XML文件中提取的额外信息)。

我希望能够将表信息写入磁盘。 如果我使用Javascript,我会使用document.getElementByID(“table”)来解析节点并将该信息放入我可以编写的变量中。但是,我发现大多数文档都说Javascript不用于写入磁盘。所以,我想我应该使用php。

什么是Javascript的'文档'对象的PHP等价物? 在Javascript中我不需要定义任何新对象来使用它,我可以随时使用“文档”。 我认为在php中我必须使用新的DOMDocument。然后加载html。

大多数php示例都显示了loadHTML(string)和loadHTMLFile(); 我不想从我在标签内写的字符串加载HTML。 我不想从.htm文件加载HTML,因为这是原始文件,Javascript根据下拉菜单中的选择更改了用户的文件。

我想使用php访问当前文档的元素。 那么,php如何引用当前文档?

我正在处理的页面是http://music.collwyncraig.info/hajimama/setlist.htm

2 个答案:

答案 0 :(得分:1)

我认为您对架构的看法是错误的。编程语言之间的交互方式有很多种。

  • php是一个预处理器并生成 - 你想要的东西 - 通常是html,包含javascript,css等等......
  • javascript是一种动态语言,可以在生成的html文档中进行交互,或者通过其他提供html,javascript,css或其他任何需要的服务来调用
  • 和html - 这是显示的文档对象,可以在运行时通过由css等设置的javascript进行修改...

所以,当你在你的文档中调用javascript函数时 - 基本的php已经完成了它的工作。

您可以先将其存储在var。

中,而不是将所有生成的内容从php直接打印到屏幕上

例如:

$myContent = "<html><head>...</head><body><h1>Whatever...</h1></body>";

因此您可以执行以下操作将其打印在屏幕上:

print "myContent";  // and it is shown on the screen

$myFile = "testFile.html";
$fh = fopen($myFile, 'w') or die("can't open file");
$myContent = "<html><head>...</head><body><h1>Whatever...</h1></body>";
fwrite($fh, $myContent);
$myContent = "Whatever2";
fwrite($fh, $myContent);
fclose($fh); 

所以你文件的内容是:

<html><head>...</head><body><h1>Whatever...</h1></body>Whatever2

然后可以通过loadHTML调用此生成的文档,或者以您的方式使用  想。

这只是暗示你可以想到哪个方向 - 有很多种解决方法 - 所以不知道你真正想要的是什么 - 提到一个合适的解决方案并不容易。

答案 1 :(得分:0)

$_SERVER['SCRIPT_NAME']表示主文件。

__FILE__获取调用此文件的完整路径。

PHP没有像jQuery那样的内置'DOM操纵器 - html输出通常是通过您选择的某个模板引擎或手动生成的。 如果你想要像jQuery这样的DOM操作,你可能想尝试PHPQuery

http://code.google.com/p/phpquery/