php – 反转矩阵数 – 循环
发布时间:2020-12-13 22:32:12 所属栏目:PHP教程 来源:网络整理
导读:首先,我有这些价值观. $Arr1 = array(1/1,1/2,3/1);$Arr2 = array(1/1,4/1);$Arr3 = array(1/1); 我需要一个带有3个数组的输出,如下所示: $a1 = array (1/1,3/1);$a2 = array (2/1,1/1,4/1);$a3 = array (1/3,1/4,1,1); 我在想的是: for ($i=0; $icount($A
首先,我有这些价值观.
$Arr1 = array(1/1,1/2,3/1); $Arr2 = array(1/1,4/1); $Arr3 = array(1/1); 我需要一个带有3个数组的输出,如下所示: $a1 = array (1/1,3/1); $a2 = array (2/1,1/1,4/1); $a3 = array (1/3,1/4,1,1); 我在想的是: for ($i=0; $i<count($Arr1); $i++) { ${"a".$i} = array( //here,the number of array elements depends to the length of $a1 ); } 有帮助吗?谢谢 我认为这张图片有助于理解这个问题: 解决方法
首先,使用2D阵列将使您的生活更轻松.
首先,像这样初始化你的值: $matrix_size = 3; $matrix = array(); for($i = 0; $i < $matrix_size; $i++){ $matrix[$i] = array_fill(0,$matrix_size,null); } $matrix[0][0] = 1/1; $matrix[0][1] = 1/2; $matrix[0][2] = 3/1; $matrix[1][1] = 1/1; $matrix[1][2] = 4/1; $matrix[2][2] = 1/1; 然后你可以运行这样的循环: foreach($x = 0; $x < $matrix_size; $x++){ foreach($y = 0; $y < $matrix_size; $y++){ if(is_null($matrix[y][x]) && !is_null($matrix[x][y])){ $matrix[y][x] = 1/$matrix[x][y]; } } } 我确信有一种更有效的方法可以做到这一点,但这是你探索的开始. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |