Php 将一个数组元素从字符串转换为整数

Php 将一个数组元素从字符串转换为整数,php,arrays,Php,Arrays,尝试将数组的两个值从字符串更改为整数,以便对它们进行数学运算 尝试: echo (float)$final_data[0][0][4] - (float)$final_data[0][0][2]; echo "<br>"; echo (float)($final_data[0][0][4] - $final_data[0][0][2])/$final_data[0][0][2]*100; 不起作用。它仍然输出字符串“2” 有办法做到这一点吗?我知道如何将所有数组转换为整数,但有没有

尝试将数组的两个值从字符串更改为整数,以便对它们进行数学运算

尝试:

echo (float)$final_data[0][0][4] - (float)$final_data[0][0][2];
echo "<br>";
echo (float)($final_data[0][0][4] - $final_data[0][0][2])/$final_data[0][0][2]*100;
不起作用。它仍然输出字符串“2”


有办法做到这一点吗?我知道如何将所有数组转换为整数,但有没有一种简单的方法可以像我现在这样对每个元素进行转换?

是的,你可以做到。首先,您不能在操作之后强制转换,因此floatthis-floatthis会更接近,但您应该使用floatval来进行转换

echo floatval( $final_data[0][0][4] ) - floatval( $final_data[0][0][2] );
echo "<br>";
echo ( floatval($final_data[0][0][4] ) - floatval( $final_data[0][0][2] ) ) / floatval( $final_data[0][0][2] ) * 100;

是的,你能做到。首先,您不能在操作之后强制转换,因此floatthis-floatthis会更接近,但您应该使用floatval来进行转换

echo floatval( $final_data[0][0][4] ) - floatval( $final_data[0][0][2] );
echo "<br>";
echo ( floatval($final_data[0][0][4] ) - floatval( $final_data[0][0][2] ) ) / floatval( $final_data[0][0][2] ) * 100;

Settype将变量的数据类型设置为指定的类型。settype$final_data[0][0][4],“int”;。如果您想知道变量的数据类型,可以使用echo gettype$final_data[0][0][4];。希望这有助于将变量的数据类型设置为指定类型。settype$final_data[0][0][4],“int”;。如果您想知道变量的数据类型,可以使用echo gettype$final_data[0][0][4];。希望这有助于

给出$final_数据的样本数据给出$final_数据的样本数据我可以问一下“手术后铸造”是什么意思吗?说强制转换更快,我使用floatval来避免坏数据的一些错误floatx-y在减法运算后强制转换-它不会正常工作。floatx-floaty是强制转换操作数,然后执行操作。请问“操作后强制转换”是什么意思?说强制转换更快,我使用floatval来避免坏数据的一些错误floatx-y在减法运算后强制转换-它不会正常工作。floatx-floaty强制转换操作数,然后执行操作。