Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/228.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用PHP动态填充SVG文件?_Php_Javascript_Svg - Fatal编程技术网

使用PHP动态填充SVG文件?

使用PHP动态填充SVG文件?,php,javascript,svg,Php,Javascript,Svg,我有以下SVG示例图: 你可以从那里看到源代码,都是客户端的 该图使用示例数据工作。现在,我需要做的是从数据库(或者从服务器上我可以使用PHP生成的文件)动态填充 将PHP代码直接放在SVG文件中不起作用。使用onLoad AJAX调用不起作用。它根本不允许我包含jQuery。那我该怎么做呢?我知道有一种方法,但我对SVG文件完全陌生。从PHP生成SVG和从PHP生成HTML之间没有真正的区别。您只需要覆盖默认的内容类型标题(标题('content-type:application/svg+x

我有以下SVG示例图:

你可以从那里看到源代码,都是客户端的

该图使用示例数据工作。现在,我需要做的是从数据库(或者从服务器上我可以使用PHP生成的文件)动态填充


将PHP代码直接放在SVG文件中不起作用。使用onLoad AJAX调用不起作用。它根本不允许我包含jQuery。那我该怎么做呢?我知道有一种方法,但我对SVG文件完全陌生。

从PHP生成SVG和从PHP生成HTML之间没有真正的区别。您只需要覆盖默认的内容类型标题(
标题('content-type:application/svg+xml');


当然,您仍然需要一个
.php
文件扩展名,因为您的服务器(默认情况下)不会被设置为解析php代码的
.svg
文件。

那么,标题应该是什么呢?实际上,如果我将格式更改为
.php
,我会得到以下错误:
解析错误:语法错误,第1行的/home/frufru/public\u html/bikestats/circos/travels.php中出现意外的T_字符串
或者,是否有方法告诉服务器解析此SVG文件中的php代码?使用htaccess还是什么?答案中有设置标题的代码。您需要在PHP安装中禁用短标记,或者从PHP中禁用XML声明。是的,谷歌会告诉你如何配置Apache以在不同文件扩展名的文件中运行PHP。谢谢,我现在就知道了。我会在几分钟内接受你的回答。对我来说,
application/svg+xml
content-type无法从PHP文件生成svg。我使用了
image/svg+xml