PHP, bir dizideki her öğeyi işlemenize izin veren bazı harika işlevlere (array_walk gibi) sahiptir. Genellikle ayarlanmışlardır, böylece ilk parametre olarak işlenmesini istediğiniz diziyi ve her bir öğeye ikinci olarak uygulanacak bir geriçağırım işlevi belirtin. Bu işlevler, booleanların başarısını gösterir, değiştirilmiş dizinin bir kopyasını beklediğiniz gibi değil. Dizinin değiştirilmesini istiyorsanız, diziyi array_walk(&$my_array, 'my_callback');
PHP'deki dizileri değiştirmek için array_walk (ve benzer işlevler) gibi işlevleri kullanma> = 5.3
gibi iletmeniz gerekir, ancak PHP 5.3 ve üstü sürümlerde, işlev çağrısına atıfta bulunursanız E_DEPRECATED hatası alırsınız.
Hata tetiklemeden ve açıkça bastırmadan dizileri değiştirmek için bu işlevleri kullanmanın (eğer varsa) doğru bir yolu olduğunu bilen var mı? Bu eski dizi işlem işlevlerine yeni alternatifler var mı.
Ah ... teşekkürler, mantıklı. İlginç bir nüans - referans olarak arayamazsınız, ancak başvurulan argümanlar ile bir fonksiyon/yöntem tanımlayabilirsiniz. http://php.net/manual/en/language.references.pass.php Yine de bu işlevlerin modifiye edilmiş dizilerden kopyalar ya da boole yerine null olmasını isterim! – Ray
Evet, tam olarak. Yardım etmek için sevindim. –