- Katılım
- 2 Mar 2015
- Konular
- 59,189
- Mesajlar
- 88,442
- Çözüm
- 109
- Online süresi
- 4mo 16d
- Reaksiyon Skoru
- 14,280
- Altın Konu
- 2,398
- TM Yaşı
- 11 Yıl 3 Ay 8 Gün
- Başarım Puanı
- 1,051
- MmoLira
- 695,207
- DevLira
- 234
ROHAN2 WORLD 1-120 TR TİPİ OFFICIAL YOHARA, BALATHOR VE AMON! 80. GÜNÜNDE! +10.000 ONLİNE! HİLE VE BOT %100 ENGELLİ HEMEN TIKLA!
Her yeni sürümde bazı yeni özellikler eklendiğinden, bazı özellikler de eskimiş kabul edildiğinden kaldırılır. Bu bölümde, PHP sürüm 5'ten sonra kullanım dışı bırakılan özelliklere bir göz atacağız.
PHP Ver 7'de kullanımdan kaldırıldı
PHP 4 Stil Oluşturucuları
PHP 4 tarzı Oluşturucular, tanımlandıkları sınıfla aynı adı taşıyan yöntemlerdir, artık kullanım dışıdır ve gelecekte kaldırılacaktır. PHP 7, bir PHP 4 oluşturucusu bir sınıf içinde tanımlanmış tek oluşturucuysa E_DEPRECATED yayacaktır. __construct() yöntemini uygulayan sınıflar etkilenmez.Örnek
Aşağıdaki örneğe bir göz atın:
PHP:
<?php
class A {
function A() {
print('Style Constructor');
}
}
?>
Tarayıcıda aşağıdaki çıktıyı üretir:
Deprecated: Methods with the same name as their class will not be
constructors in a future version of PHP; A has a deprecated constructor in...
Statik Olmayan Yöntemlere Statik Çağrılar
Statik olmayan yöntemlere yapılan statik çağrılar kullanım dışıdır ve gelecekte kaldırılabilir.Örnek
Aşağıdaki örneğe bir göz atın:
PHP:
<?php
class A {
function b() {
print('Non-static call');
}
}
A::b();
?>
Tarayıcıda aşağıdaki çıktıyı üretir:
Deprecated: Non-static method A::b() should not be called statically in...
Non-static call
password_hash() salt seçeneği
password_hash() işlevi için salt seçeneği, geliştiricilerin kendi (genellikle güvenli olmayan) salt'larını üretmemesi için kullanımdan kaldırıldı. İşlev, geliştirici tarafından tuz sağlanmadığında kriptografik olarak güvenli bir salt üretir - bu nedenle artık özel salt üretimine gerek yoktur.capture_session_meta SSL bağlam seçeneği
capture_session_meta SSL bağlam seçeneği kullanım dışı bırakıldı. SSL meta verileri artık stream_get_meta_data() işlevi aracılığıyla kullanılıyor.ext/mcrypt
mcrypt uzantısı OpenSSL lehine kullanımdan kaldırıldı.Tırnak İşareti Olmayan Dizeler
Varolmayan küresel sabitler olan tırnak işareti olmayan dizeler kendi dizeleri olarak kabul edilir. Bu davranış eskiden bir E_NOTICE yayıyordu, ancak şimdi bir E_WARNING yayacaktır. PHP'nin bir sonraki büyük sürümünde bunun yerine bir Error istisnası atılacaktır.__autoload() Yöntemi
__autoload() yöntemi, spl_autoload_register()'dan daha düşük olduğu (otomatik yükleyicileri zincirleyemediği için) ve iki otomatik yükleme stili arasında bir birlikte çalışabilirlik olmadığı için kullanım dışı bırakılmıştır.create_function() İşlevi
Bu işlevin güvenlik sorunları göz önüne alındığında artık kullanım dışı bırakıldı. Tercih edilen alternatif anonim işlevleri kullanmaktır.each() Fonksiyonu
Bu fonksiyon bazı dil değişiklikleri için uygulama sorunlarına neden olur. Bu nedenle kullanım dışı bırakılmıştır.Büyük/Küçük Harfe Duyarlı Olmayan Sabitler
Büyük/küçük harfe duyarlı olmayan sabitlerin bildirimi kullanım dışı bırakıldı. define()'e üçüncü argüman olarak true geçirmek artık kullanım dışı kalma uyarısı üretecektir.The (real) and is-real() Fonksiyonu
(Gerçek) dönüşüm kullanım dışıdır, bunun yerine (float) kullanın. is_real() fonksiyonu da kullanım dışıdır, bunun yerine is_float() kullanın.The ''parent'' Leyword
Bir sınıfın içinde ebeveyni olmayan bir ebeveyni kullanmak modası geçmiştir ve gelecekte derleme zamanı hatası verecektir. Şu anda bir hata yalnızca ebeveyne çalışma zamanında erişildiğinde/erişildiğinde üretilecektir.PHP Ver 8'de kullanımdan kaldırıldı
Varsayılan değere sahip bir parametrenin ardından gerekli bir parametre gelirse, varsayılan değerin hiçbir etkisi olmaz. Bu, PHP 8.0.0'dan itibaren kullanımdan kaldırılmıştır ve işlevsellikte bir değişiklik olmaksızın genellikle varsayılan değerin düşürülmesiyle çözülebilir.
PHP:
<?php
function test($a = [], $b) {} // Before
function test($a, $b) {} // After
?>
Bu kuralın bir istisnası, null varsayılanının türü örtük olarak boş bırakılabilir hale getirdiği Type $param = null biçimindeki parametrelerdir. Bu kullanım hâlâ izin verilen bir kullanımdır, ancak bunun yerine açıkça boş bırakılabilir bir tür kullanılması önerilir.
PHP:
<?php
function test(A $a = null, $b) {} // Still allowed
function test(?A $a, $b) {} // Recommended
?>
include_disabled açıkça false olarak ayarlanmış şekilde get_defined_functions()'u çağırmak kullanımdan kaldırılmıştır ve artık bir etkisi yoktur. get_defined_functions() devre dışı bırakılmış işlevleri asla dahil etmeyecektir.
True veya false döndüren sıralama karşılaştırma fonksiyonları artık kullanımdan kaldırılma uyarısı verecek ve sıfırdan küçük, sıfıra eşit veya sıfırdan büyük bir tam sayı döndüren bir uygulama ile değiştirilmelidir.
PHP:
<?php
// Replace
usort($array, fn($a, $b) => $a > $b);
// With
usort($array, fn($a, $b) => $a <=> $b);
?>
Örtük Uyumsuz float'tan int'e Dönüşümler
Hassasiyet kaybına yol açan float'ın int'e örtük dönüşümü artık kullanım dışıdır. Bu, dizi anahtarlarını, zorlayıcı moddaki int türü bildirimlerini ve int'ler üzerinde çalışan operatörleri etkiler.
Bir Özellik Üzerindeki Statik Bir Elemanı Çağırma
Statik bir yöntemi çağırmak veya bir özelliğe doğrudan bir özellik üzerinde erişmek kullanım dışıdır. Statik yöntemlere ve özelliklere yalnızca özelliği kullanan bir sınıfta erişilmelidir.Tarih Fonksiyonları
date_sunrise() ve date_sunset() kullanım dışı bırakıldı. Bunun yerine date_sun_info() kullanın.strptime() kullanımdan kaldırıldı. Bunun yerine date_parse_from_format() (yerel ayarlardan bağımsız ayrıştırma için) veya IntlDateFormatter:
arse() (yerel ayarlara bağlı ayrıştırma için) kullanın.strftime() ve gmstrftime() kullanım dışı bırakıldı. Bunun yerine date() (yerel ayarlardan bağımsız biçimlendirme için) veya IntlDateFormatter::format() (yerel ayarlara bağlı biçimlendirme için) kullanabilirsiniz.


