Dalam PHP, anda mungkin menghadapi keperluan untuk menggabungkan dua tatasusunan sambil mengekalkan rentetan asal dan indeks integer. Walau bagaimanapun, fungsi array_merge() lalai mengindeks semula tatasusunan yang terhasil dengan integer berturut-turut.
// Array with string-indexed pairs $staticIdentifications = [ 'userID' => 'USERID', 'username' => 'USERNAME' ]; // Array with integer-indexed pairs $companyVarIdentifications = CompanyVars::getIdentificationVarsFriendly($_SESSION['companyID']); // Unsuccessful Attempt to Merge with Preserved Key Types $idVars = array_merge($staticIdentifications, $companyVarIdentifications);
Untuk mengekalkan jenis kunci semasa cantuman, gunakan operator dan bukannya array_merge():
$idVars = $staticIdentifications + $companyVarIdentifications;
Operasi ini menggabungkan dua tatasusunan sambil mengekalkan jenis kunci masing-masing. Tatasusunan $idVars yang terhasil akan mengandungi kunci rentetan dan integer, mencerminkan struktur asal tatasusunan input.
Tidak seperti tatasusunan_merge(), penambahan tatasusunan:
Dalam kes khusus ini, tatasusunan $idVars akan mempunyai kedua-dua kekunci rentetan (cth., 'userID') dan kekunci integer (cth., 123), membolehkan akses kepada nilai berdasarkan kedua-dua jenis kekunci.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengekalkan Jenis Utama Apabila Menggabungkan Tatasusunan dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!