Php 创建if块时出现问题

Php 创建if块时出现问题,php,Php,我正在使用的代码 if ($_REQUEST('addOrEdit') == 'add') { $stmt2 = $pdo->prepare("insert into ITEM (tracker, date, significance, obsolete, description,data, programs, topics, lastModifiedBy) values (?,?,?,?,?,?,?,?,?"); // $stmt2->execute

我正在使用的代码

    if ($_REQUEST('addOrEdit') == 'add') {
      $stmt2 = $pdo->prepare("insert into ITEM (tracker, date, significance, obsolete, description,data, programs, topics, lastModifiedBy) values (?,?,?,?,?,?,?,?,?");

//      $stmt2->execute(array($tracker,$_REQUEST['date'],$_REQUEST['significance],$_REQUEST['obsolete'],$_REQUEST['description'], null, $_REQUEST[program],$_REQUEST[topic],null);

    }  
如果我注释掉If行和右括号,它就会工作(在AWS LAMP实例上)。但除此之外,这会破坏我的页面,当我尝试加载它时,我只看到一个空白页面

在我的页面的其他地方,我回显了
$\u请求['addOrEdit']
,它显示了
add


问题似乎在于我的
if
用法(?)我做错了什么?

您在
if
语句中编写了大括号来获取请求参数。将支架更换为方括号

if ($_REQUEST['addOrEdit'] == 'add') {
除了语法错误(这可能是一个输入错误,因为您的问题稍后包含正确的语法),正如Rahul所指出的,您可以更谨慎地检查数组中是否存在密钥

if (array_key_exists('addOrEdit', $_REQUEST) && $_REQUEST['addOrEdit'] === 'add') {

$\请求是数组类型的全局变量。它不是函数。 您可以使用[]而不是this()访问变量。 所以试试这个

如果($_请求['addOrEdit']=='add'){ 你的代码
}

可能重复@04FS谢谢您的链接。我希望这将大大加快我的发展!