2012-09-17 63 views
1

我需要爲這種類型的問題提供答案。請我需要從HTML輸入字段獲取變量類型並回顯該類型的$ var。PHP:如何從輸入字段獲取變量類型

從這個表格我需要檢查輸入的數據類型。是字符串還是整數等等

<form> 
<input type="text" name="podatak" value="podatak" /> 
<input type="Submit" name="Submit"> 
</form> 

在此先感謝。

+0

我需要這種形式的類型:

erolmujak

+0

你不知道你得到了什麼input/select/textarea類型。 – Sergey

+0

@ user1677402看到我編輯的答案,這可能是我會一起去的。 – Fluffeh

回答

-1

,您可以利用這些功能:is_intis_arrayis_nullis_floatis_doubleis_bool

+0

但它會不會總是一個字符串或數組? –

+0

然後,使用其他方法,如is_null,is_float,is_double等? – Raptor

+0

它仍然只是一個字符串或數組。如果輸入字段不存在,則輸入' –

2

它總是一個字符串或數組。如果is_array($_POST['value'])返回true;這是一個數組。在任何其他情況下,它是一個字符串。

7

所有表單子模型都是以此開頭的字符串。然而,你可以使用像is_numeric這樣的函數來查看該項是否是一個數字,並且is_array來查看被傳遞的表單元素是否是一個數組(可能是複選框,可能是文件等)。

根據您的意見,我會做類似如下:

function whatTypeAmI($var) 
{ 
    if(is_array($var) 
    { 
     // Request is likely a checkbox or multiple files. 
     echo "I am an Array! Yeeehaaa!"; 
    } 
    else if(is_numeric($var)) 
    { 
     // I look like a number, or someone 
     // typed in a number into a text field. 
     echo "I am a Fluffeh number!"; 
    } 
    else 
    { 
     echo "Goodness, who knows what on earth happened?"; 
    } 
} 

foreach($_POST as $val) 
{ 
    whatTypeAmI($val); 
} 
-2
function gettype_custom($var){ 
    if(is_array($var)){ 
     return 'array'; 
    }elseif(is_numeric($var)){ 
     return 'numeric'; 
    }elseif(is_string($var)){ 
     return 'string'; 
    }else{ 
     return 'unknown'; 
    } 
} 
+0

不是我的倒票,但我猜你得到了倒票,因爲'$ _POST'或'$ _GET'數據是一個數組或字符串。因此'gettype'在這種情況下無用 –

+0

,但是如何將它與此連接:

」/>
erolmujak

+0

'」/ >' – Night2

0

我猜你正在努力尋找表單字段類型不是數據類型...如文本,提交,按鈕等等...如果那是你的場景,那麼我恐怕沒有這樣的功能。據我所知,表單發佈不會發送任何表單類型的信息到服務器......任何方式,你可以使用關聯數組。例如:在你的PHP方面做一些事情。

<?php 
    function getType($elementName){ 
     $formType = array('elementName1' => 'elementType1', 'elementName2' => 'elementType2'......); 
     if(array_key_exists($elementName, $formType)) 
      return $formType[$elementName]; 
     return 'Unknown'; 
    } 

    foreach($_POST AS $elementName => $elementVal){ 
      echo 'name = '.$elementName.' type = '. getType($elementName).' value ='.$elementVal; 
    } 
+0

我需要一種輸入數據,它是一個整數還是字符串。我需要在輸入字段中輸入內容並回顯輸入數據的類型。 – erolmujak