@ Php Readfile?

5 Cevap php

Google semboller arama yapamazsınız nefret ediyorum. Ben bazı örnek kod, bu gördüm ve bir @ işareti readfile işlevi önce neden orada olduğunu merak:

@readfile($filename);

Bir @ sembolü olmadan farklı ne demek?

5 Cevap

Bir @ PHP bir komutundan önce hiçbir hata basılmış demektir. Bu error control operator denir.

Eğer @ çıkarıldı ve readfile (örneğin dosyayı okumak mümkün değil varlık olarak) bir hatayla karşılaşırsanız istiyorsanız, PHP ayarları-hata mesajı bağlı olarak-ortasında olacak sizin site içeriği; nadiren, eğer hiç bir şey istiyorum. (Içerik gönderildikten sonra, başlıklar artık yazılı olamaz, çünkü bu header() veya start_session() için bir çağrı önce olur ise, daha da kötüleşiyor.)

It error control operator. Manuel size herşeyi anlatacağım ...

Bununla beraber It is PHP's error suppression operator. hata iletileri bastırmak olabilir.

Tip:

Sadece hız kritik kodu ile hata bastırma operatörü kullanmayın.

Future:

@ operatörü çok yavaş olduğundan, PHP örneğin PHP6 gelecek sürümünde ini_set, örneğin @ini_set çalışmaz

Important Reading:

Bad uses of the @ operator

@ "Hatalar / uyarılar göstermek yok" anlamına gelir

Ben "stfu operatörü" olarak @ bakın.