문제는 PHP에서 각 행과 열에 키가 있어야하는 2D 행렬을 만들어야한다는 것입니다. 나는이 일을 시도했다. 그러나 행렬을 닮지 않는 2-D 배열이 만들어졌다.PHP에서 2 차원 행렬 만들기
다음 $x=$row['start_id'];
$y=$row['dest_id'];
$d=$row['distance'];
$this->map[$x][$y]=$d;
지도는 의도 행렬이다 : 나는 다음과 같은 코드를 사용했다. 이 코드의 목적은 인접 행렬을 작성한 다음 설정되지 않은 셀을 최대 거리로 채우는 것입니다. 위의 코드에서 $ x, $ y 및 $ d는 mysql 쿼리의 결과에서 파생됩니다.
샘플 출력 :
Array (
[10010012] => Array (
[10010013] => 2
[10010016] => 8
)
[10010016] => Array (
[10010015] => 5
)
[10010013] => Array (
[10010014] => 7
[10010016] => 3
)
[10010014] => Array (
[10010015] => 2
)
)
이제 문제는 내가 빈 셀
예를 채울 수 아니라고이다 행 키 => [10010012] 및 열 키 => [10010015] (값을 설정할 수 없음)
도움이 되었습니까? 가능한 경우 이러한 행렬을 통과하는 방법도 언급하십시오.
나는 비교적 초보자이며 내 문제를 설명하기 위해 최선을 다했습니다. 그러나 어떤 단점을 발견하면 그들을 지적하십시오.
편집 : 매트릭스가 정사각형이 아닙니다. 한편
$this->map[10010012][10010015]= MAX_DISTANCE;
것
"수 없음"? 정확히 무엇이 오류 메시지입니까, 아니면 작동하지 않는 것은 무엇입니까? – Franz
오류 메시지가 아닙니다. 나는 잘못된 방식으로 연관 배열을 사용하여 행렬을 만들고 있습니다. 논리에 문제가있는 것 같습니다. – 5lackp1x3l0x17