downloads | documentation | faq | getting help | mailing lists | licenses | wiki | reporting bugs | php.net sites | links | conferences | my php.net

search for in the

İsim çözünürlük kuralları> <Küresel Alan
Last updated: Tue, 17 Nov 2009

view this page in

İsim alanlarının kullanımı: son çare olarak küresel işlev ve sabitler

Bir isim alanı içinde PHP, bir sınıf ismi, işlev veya sabitin bağlamında nitelenmemiş isimlere rastlarsa bunları farklı önceliklerle ele alır. Sınıf isimleri daima geçerli isim alanı ismine çözümlenir. Dolayısıyla yerleşik veya isim alansız kullanıcı sınıflarına erişmek için, bunların aşağıdaki gibi tamamen nitelenmiş isimlerinin kullanılması gerekir:

Örnek 1 - Küresel sınıflara bir isim alanı içinde erişim

<?php
namespace A\B\C;
class 
Exception extends \Exception {}

$a = new Exception('hi'); // $a, A\B\C\Exception sınıfının bir nesnesidir
$b = new \Exception('hi'); // $b, Exception sınıfının bir nesnesidir

$c = new ArrayObject// ölümcül hata, A\B\C\ArrayObject yoktur
?>

İşlevler ve sabitler açısından PHP, bir isim alanlı işlev veya sabit mevcut değilse son çare olarak küresel işlevlere ve sabitlere başvurur.

Örnek 2 - Bir isim alanı içinde son çare olarak küresel işlev ve sabitlerin kullanımı

<?php
namespace A\B\C;

const 
E_ERROR 45;
function 
strlen($str)
{
    return \
strlen($str) - 1;
}

echo 
E_ERROR"\n"// "45" basar
echo INI_ALL"\n"// "7" basar - son çare olarak küresel INI_ALL

echo strlen('hi'), "\n"// "1" basar
if (is_array('hi')) { // "dizi değil" basar
    
echo "dizi\n";
} else {
    echo 
"dizi değil\n";
}
?>



add a note add a note User Contributed Notes
İsim alanlarının kullanımı: son çare olarak küresel işlev ve sabitler
There are no user contributed notes for this page.

İsim çözünürlük kuralları> <Küresel Alan
Last updated: Tue, 17 Nov 2009
 
 
show source | credits | sitemap | contact | advertising | mirror sites