(PHP 4 >= 4.1.0, PHP 5, PHP 7, PHP 8)
dotnet sınıfı, bir .Net derlemesinden bir sınıfın örneklenmesini ve » COM'a görünür iseler yöntemlerinin çağrılabilmesini ve özelliklerine erişilebilmesini sağlar.
Statik sınıfların örneklenmesi veya statik yöntemlerin çağrılması desteklenmediği gibi System.Collections.Generic.List
gibi soysal sınıfların örneklenmesi de desteklenmemektedir.
Bazı .Net sınıfları IDispatch'i gerçeklemediğinden örneklenebilseler bile bu sınıflardaki yöntemlerin çağrılması veya özelliklerine erişilmesi desteklenmemektedir.
Bilginize:
Bu özellikten faydalanmak için http sunucunuza .Net çalıştırılabilirini kurmanız gerekmektedir.
Bilginize:
PHP 8.0.0 öncesinde, .Net framework 4.0 ve sonraki sürümleri, dotnet sınıfı tarafından desteklenmezdi. Derlemeler regasm.exe ile kaydedilmişse, sınıflar com nesneleri olarak örneklenebiliyordu. PHP 8.0.0 itibariyle, .Net framework 4.0 ve sonraki sürümleri, com.dotnet_versionphp.ini yönergesi üzerinden desteklenmektedir.
Döndürülen nesne aşırı yüklenmiş bir nesnedir, yani PHP normal sınıflarda olduğu gibi herhangi bir sabit yöntem görmez; bunun yerine, herhangi bir özellik veya yöntem erişimi COM'a oradan da DOTNET'e iletilir. Başka bir deyişle, .Net nesnesi, .Net çalıştırılabiliri tarafından sağlanan COM birlikte çalışabilirlik katmanı aracılığıyla eşlenir.
Bir kez bir dotnet nesnesi oluşturulduğunda, PHP ona herhangi bir COM nesnesine davrandığı gibi davranır; aynı kurallar uygulanır.
Örnek 1 dotnet örneği
<?php
$stack = new dotnet("mscorlib", "System.Collections.Stack");
$stack->Push(".Net");
$stack->Push("Hello ");
echo $stack->Pop() . $stack->Pop();
?>