我正在尝试将php变量插入到下面的代码中。当文档下载弹出窗口显示时,它显示$ filename而不是实际文件名。我怎样才能做到这一点?
代码:
<?php
header('Content-disposition: attachment; filename=$filename');
header('Content-type: $type');
readfile('$filename');
?>
答案 0 :(得分:4)
您正在使用单引号。不评估使用单引号的字符串文字内的变量。改为使用连接或双引号。
<?php
header("Content-disposition: attachment; filename=$filename"); // double quotes
header('Content-type: ' . $type); // concatenation
readfile($filename); // no quotes needed
?>
答案 1 :(得分:2)
使用"
而不是'
来获取变量的值而不是名称。使用"
时,解析变量(解析数组元素需要使用{和},但我确定你会在需要时找到它)。
答案 2 :(得分:2)
使用双引号:"
而不是单引号:'
答案 3 :(得分:2)
使用"
引号。 PHP不会用'
引号括起来的字符串中的变量替换。
答案 4 :(得分:2)
此处不需要引号,只需使用
即可header('Content-disposition: attachment; filename='.$filename);
header('Content-type: '.$type);
readfile($filename);