2011-10-09 68 views
7

什麼是最好的(最有效的,最容易理解的代碼等)方法來檢查變量是否是PHP中的原始類型?如何測試一個變量是否是原始的PHP

我應該去「積極」(例如is_string() || is_int()...)方式,反之亦然!is_array() && __is_object()..或者一些更炫的方式?

+0

我個人會堅持'is_ ()';他們在那裏是有原因的(總是試圖保持清晰和目的以後的道路)。 –

+0

a)使用** breiti **的答案b)**絕對**積極的方式 - 你永遠不會知道什麼樣的新類型會彈出 - 更好的方法是考慮任何其他非原始:) –

回答

17

您正在尋找is_scalar()

+0

哇,我做了不知道這個存在。謝謝! – Aurimas

+0

is_scalar()實際上只適用於布爾型,整型,浮點型(double)和字符串。因爲這個問題談論的是基元類型,它們也是數組,對象,資源和NULL,所以你的答案不會總是有效。 –

+0

@ Pier-AlexandreBouchard數組和對象通常被認爲不是真正的基本原語(特別是不是對象),NULL是一種特殊的「類型」...根本不是一種類型...,並且資源恰好建立在整數=>可以及時更改:) –

0

我會用is_type()積極的,因爲它更符合邏輯,並在疲憊的時候你會感到困惑,所有的底片。

0

好,最簡單的代碼來讀取可能是定義一個is_primitive_type()。我懷疑效率是這樣一個簡單的操作任何真正的關注。

相關問題