PHP에서 키가 문자열 쌍인 연관 배열을 만들고 싶습니다.PHP는 C++의 std :: pair를 가지고 있습니까?
처음에는 문자열을 중간에 고유 한 구분선으로 연결하고 나중에 구분하는 것을 고려했지만 쌍을 사용할 때 해로운 해결 방법 인 것처럼 보입니다. 당신은 PHP에서 배열의 키와 같은 배열을 사용할 수 없기 때문에
$andrew = array('Andrew', 'Rasmussen');
$john = array('John', 'Smith');
$container[$andrew] = 15;
$container[$john] = 12;
$pair = array('Andrew', 'Rasmussen');
if (array_key_exists($pair, $container)) {
echo 'true';
} else {
echo 'false';
}
은 분명히이 코드가 작동하지 않습니다
는 다음과 같은 코드를 생각해 보자. 좋은가 연결하고 나중에 문자열을 구문 분석하지 않고 이런 식으로 뭔가를 할 수 있습니까?
편집 나는이 작업을 수행하고자하는 이유가 있습니다. 나는 array(key=string1,value=array(key=string2,value=occurrences))
을 가지고 있으며, 문자열 쌍의 상위 5 개 항목을 찾습니다. 그래서 기본적으로 이것을 1 차원 배열로 평면화 한 다음 정렬하여 상위 5 개를 쉽게 잡을 수 있습니다.하지만 이렇게하려면 정렬 후에 문자열을 개별적으로 추출 할 수 있어야합니다. 위에서 설명한 분할 알고리즘을 사용하여 수행 할 수 있지만 바람직하지 않습니다. 따라서 대체 방법을 요구합니다.
가능합니까? 그렇습니다. 그러나 연결을 사용하고'폭발 '하는 것보다 훨씬 많은 작업이 필요합니다. – paxdiablo
@paxdiablo 배열 + serialize() + 배열 unserialize()에 대한 귀하의 생각은 무엇입니까? –
임의의 분리자를 발명 할 필요가 없으므로 직렬화가 더 좋을 것으로 생각됩니다. – paxdiablo