我需要将此POST变量乘以12.例如,如果金额为10,结果应该说:
directionfd = open("/sys/class/gpio/gpio971/direction", O_RDWR);
if(directionfd < 0)
{
printf("Cannot open GPIO direction it\n");
exit(1);
}
到目前为止,这是我的代码:
Amount: 120
我尝试在另一个变量中运行计算,但这似乎不起作用:
Amount :'.$_POST['my_amount'].'<br/>
或者它可以工作,我的输出代码不起作用:
$result = ($_POST['my_amount'])*12;
答案 0 :(得分:0)
如果您希望输出类似于第一个示例,... Amount:120以下三个示例中的每个示例中缺少的块数。首先,请确保您的$ _POST变量为有效变量,并将其设置为新变量,以便在需要时可以打印出该变量。
// if you only expect $_POST['my_amount'] to contain integers...
if(is_int(intval($_POST['my_amount']))){
$my_amount = intval($_POST['my_amount']) * 12;
// or if you expect $_POST['my_amount'] to possibly contain a decimal
if(is_float(floatval($_POST['my_amount']))){
$my_amount = floatval($_POST['my_amount']) * 12;
intval确保将变量转换为整数(如果可以的话),尽管并非完全必要,因为用php进行乘法操作可以做到这一点...它的优良作法是检查您正在使用的任何变量和数学功能。 /> 对于具有十进制的数字,floatval的作用相同。因为整数必须是整数,如果您的变量可以是可能包含小数的数字,请使用floatval
所有示例都需要指定以打印/回显字符串。...如此
// your second line
echo 'Amount :'.$my_amount .'<br/>';
// your fourth line...
$vl_text='Amount: '.$my_amount;
echo $vl_text;
}
答案 1 :(得分:-1)
最合乎逻辑的解释是你从POST获得字符串。实现所需要的一个好方法是将POST值转换为int,但请记住它不能是数字。
$int = (is_numeric($_POST['my_amount']) ? (int)$_POST['my_amount'] : 0); //If POST value is numeric then convert to int. If it's not numeric then convert it to 0
答案 2 :(得分:-1)
$_POST['my_amount'] = 150;
$data = $_POST['my_amount'] * 12;
echo $data;
结果将为1800