PHP - 包含变量时意外的T_VAR

时间:2013-05-05 23:35:24

标签: php include

当我尝试从外部php文件中包含一个变量时,我收到此错误: 第1行意外的T_VAR

这是我的外部PHP代码:

<?php var dbStr = 'host::,username::,password::,database'; ?>

这是包含它的PHP文件:

if($_POST['admincreate'] == "ok")
{
include('db.php');
$info = explode("::,", dbStr);
$con=mysqli_connect($info[0],$info[1],$info[2],$info[3]);
mysqli_query($con,"INSERT INTO admins (id, user, pass)
VALUES ('" . $_POST['user'] . "', '" . $_POST['pass'] . "',0)");
}

如果我将代码更改为

,则有效
if($_POST['admincreate'] == "ok")
{
$dbStr = 'host::,username::,password::,database';
$info = explode("::,", $dbStr);
$con=mysqli_connect($info[0],$info[1],$info[2],$info[3]);
mysqli_query($con,"INSERT INTO admins (id, user, pass)
VALUES ('" . $_POST['user'] . "', '" . $_POST['pass'] . "',0)");
}

但我需要附带的文件。

如果我将包含的文件更改为

<?php $dbStr = 'host::,username::,password::,database'; ?>

我收到此错误: 解析错误:语法错误,第1行的... / db.php意外'='

我发现外部php文件已更改为

<?php  = 'host::,username::,password::,database'; ?>

如果没有给出错误,我如何正确包含此字符串?

P.S。外部php是由主php文件使用fopen和fwrite生成的,主机,用户名,密码和数据库的实际值也被审查,因为我感觉更好。

提前致谢, -p0iz0n

1 个答案:

答案 0 :(得分:5)

var无效PHP

<?php var dbStr = 'host::,username::,password::,database'; ?>

应该是

<?php $dbStr = 'host::,username::,password::,database'; ?>

有趣的是,你在第二个例子中说得对。