Ben böyle PHP bir dizi var:
$test = array('3' => 5);
How could I replace the stringed array key 3? I tried:
$test['3'] = "New value"
ama bundan sonra böyle bakmak, işe yaramaz:
array('3' => 5, 3 => "New value")
PHP version: 5.2.11
Eğer diziye sayısal özellik adı ile nesneyi dönüştürdüğünüzde dize ile temsil sayısal endeksi alabilirsiniz en olası yolu.
Bu kapalı daha detaylı here
İlk aslında bir sayısal indisli bir dizi anahtarı, ikinci bir string key yaratıyor. Sen type casting tutarlı davranış zorlamak için kullanabilirsiniz.
$test = array((string) '3' => 5);
$test[(string) '3'] = "New value";
Güncelleştirme, bu PHP Sürüm 5.2.13 benim için aynı şekilde davranır:
$test = array('3' => 5);
echo '<pre>'.print_r($test,true).'</pre>';
$test['3'] = "New value";
echo '<pre>'.print_r($test,true).'</pre>';
$test = array((string) '3' => 5);
echo '<pre>'.print_r($test,true).'</pre>';
$test[(string) '3'] = "New value";
echo '<pre>'.print_r($test,true).'</pre>';