【发布时间】:2014-06-23 15:01:13
【问题描述】:
我正在为我的客户开发一个客户端-服务器应用程序。我被要求向数据库添加更多列。我更新了 php 端点来处理这个问题。我遇到的问题是并非所有客户端应用程序都会立即更新,那么如何使附加参数成为可选参数?我对php很陌生,所以如果我没有马上理解,我很抱歉。
编辑:问题是数据甚至可能不包含三个可选成员。所以我需要检查该数据是否具有成员 devicemake、devicemodel 或 networktype。
示例代码:
switch(strtolower($_SERVER['REQUEST_METHOD']))
{
case 'get':
echo"this is a get request";
$data = $_GET;
print_r($data);
$problem = $data['problem'];
$environment = $data['environment'];
$latitude = $data['latitude'];
$longitude = $data['longitude'];
$devicemake = ($data['devicemake'] ? $data['devicemake'] : null); // optional
$devicemodel = ($data['devicemodel'] ? $data['devicemodel'] : null); //optional
$networktype = ($data['networktype'] ? $data['networktype'] : null); // optional
$additionalinfo = $data['additionalinfo'];
break;
case 'post':
echo "this is a post request";
print_r($HTTP_POST_VARS);
$postvars = $HTTP_POST_VARS;
$data = json_decode($postvars);
$problem = $data->problem;
$environment = $data->environment;
$latitude = $data->latitude;
$longitude = $data->longitude;
$devicemake = ($data->devicemake ? $data->devicemake : null); //optional
$devicemodel = ($data->devicemodel ? $data->devicemodel : null); //optional
$networktype = ($data->networktype ? $data->networktype : null); //optional
$additionalinfo = $data->additionalinfo;
break;
}
【问题讨论】:
-
你应该使用
isset($data['devicemake'])进行测试。