在強類型語言中,類型約束是語法上的要求,即定義一個變量的時候,必須指定類型,並且以後也只能存儲該類型數據;
php是弱類型,其特點是無需為變數指定類型,而且在其後也可以儲存任何類型,不過在php的新語法中,在某些特定場合,針對某些特定類型,也可進行語法約束。
即可以對函數(方法)的參數設定必須使用的型別。只能對物件、介面、陣列和函數進行約束。
<code><span><span>function</span><span>f</span><span>(类名 <span>$p</span>)</span>{</span>} <span>// 要求参数只能使用该类的对象</span><span><span>function</span><span>f</span><span>(接口名 <span>$p</span>)</span>{</span>} <span>// 要求该参数只能使用实现该接口的对象</span><span><span>function</span><span>f</span><span>(arrary <span>$p</span>)</span>{</span>} <span>// 要求该参数只能使用数组</span><span><span>function</span><span>f</span><span>(callable <span>$p</span>)</span>// 要求该参数只能是一个函数(方法),此时称之为回调函数(方法)</span></code>
<code><span><span><?php</span><span><span>class</span><span>A</span>{</span>} <span><span>function</span><span>f</span><span>(A <span>$p</span>)</span>{</span>} <span>$obj</span> = <span>new</span> A(); f(<span>$obj</span>);</span></code>
以上就介紹了PHP之類型約束,包含了方面的內容,希望對PHP教學有興趣的朋友有幫助。