所以我的问题是这个.我有一个公式(见图),根据该公式,我应该计算一些坐标,在输出字段中给出.

我在php中制作了我的公式,但它返回了错误的结果.
公式:
$inpx =(string)3484481.0943; //input X
$inpy =(string)3144325.1033;//input Y
$inpz =(string)4305103.1740;//input Z
$dx=-2.0796; //delta X
$dy=-0.3484; //delta Y
$dz=1.7009; //delta Z
$rx=(string)(0.05465/3600)*(string)(M_PI/180);
$ry=(string)(-0.06718/3600)*(string)(M_PI/180);
$rz=(string)(0.06143/3600)*(string)(M_PI/180);
$k=(string)0.0181/(string)pow(10,6);
$n=1+$k;
$X84=$n*$inpx-$rz*$n*$inpy+$ry*$n*$inpz+$dx;
$Y84=$rz*$n*$inpx+$n*$inpy-$rx*$n*$inpz+$dy;
$Z84=-$ry*$n*$inpx+$rx*$n*$inpy+$n*$inpz+$dz;
$X84 = round($X84,4);
$Y84 = round($Y84,4);
$Z84 = round($Z84,4);
Run Code Online (Sandbox Code Playgroud)
我应该得到的结果
Run Code Online (Sandbox Code Playgroud)$X84 = 3484481.4163; $Y84 = 3144324.9149; $Z84 = 4305102.9848;
我得到的结果
Run Code Online (Sandbox Code Playgroud)$X84 = 3484476.7392; $Y84 = 3144324.7089; $Z84 = 4305106.9208;
如果有人能在我的配方中找到我的错误,我将不胜感激,因为我现在已经搞乱了几天.
所以我有这样的数组如下:
[0] => Array
(
[id] => 10
[rec_id] => 4
[mid] => a:2:{i:0;s:1:"2";i:1;s:1:"5";}
[cid] => 5
[lang] => geo
[title] => ???? ???????? ?????????
[intro] =>
[img] => xhdvlmvogeujm76.jpg
[text] =>
)
[1] => Array
(
[id] => 7
[rec_id] => 6
[mid] => a:2:{i:0;s:1:"2";i:1;s:1:"5";}
[cid] => 3
[lang] => geo
[title] => 70 people died
[intro] =>
[img] => as554ghbvwe5.jpg
[text] =>
)
)
Run Code Online (Sandbox Code Playgroud)
我想要做的是计算我的项目中有多少不同的Cid(类别ID).假设我有5个项目,每个不同的cid,然后计数器应该返回5,如果这5个中的3个具有相同的cid,则返回3,依此类推.我一直在锻炼,foreach()但没有运气.在这里我尝试了
foreach ($data as $k=>$v)
{
if ($v['cid']!=$v['cid']){
$counter=$counter+1;
}
}
Run Code Online (Sandbox Code Playgroud)