をarray_column。 最初の配列$number
:
array(2) {
[0]=>
string(3) "100"
[1]=>
string(3) "200"
}
と二番目の配列$links
:
array(2) {
[0]=>
string(12) "newFancyLink"
[1]=>
string(13) "newFancyLink2"
}
私は次の行を使用していた$number
- 値に応じて1つまたは複数のリンクを交換するために$myArray
を変更します
for($i = 0; $i < 2; $i++)
{
$myArray[array_search($number[$i], array_column($myArray, "0"))][1] = $links[$i];
}
これは機能しませんが、の両方のリンクを設定します同じ値にと200
(第2リンク)
I作品このコードを書いたが、私は代わりに、他のラインを使用したいか、少なくともその使用
for($i = 0; $i < 2; $i++)
{
for($j = 0; $j < 2; $j++)
{
if($myArray[$j][0] == $number[$i])
{
$myArray[$j][1] = $links[$i];
}
}
}
のもパフォーマンスを比較することになります$number
- 値をキーとしてこれをもっと簡単にすることができますが、これは私の選択肢ではありません。
EDITケース誰に
を解決した後、両方のバージョンが速く、同一alostあり、知りたいです。このランタイムで10000回のラン各結果:
0.10158801078796
0.10160994529724
PHPは連想配列と数値配列だけしか数値ではないので、問題はないと思っています。 ://stackoverflow.com/questions/37854038/php-numeric-array-order ありがとうございます、私はそれを調べます – JRsz
私はチェックして、あなたの答えが動作します。私にとってPHPは時々奇妙です:D 私の問題を解決したので答えを受け入れました、ありがとう:) – JRsz