2014-09-26 25 views
0

我對PHP和單詞按下的世界是全新的。在PHP中比較未知類型和字符串

我需要比較一個字符串與已定義的函數,它返回一些值,但不是null

當我試圖print與一個echo功能它打印一些文本,但是當我試圖讓使用get_type(function())返回Null返回值的類型。

而且已知的字符串和打印的文本都是相同的,但仍然不能滿足我的條件。

我只需要將已知字符串與該方法返回的值進行比較。

編輯:

,我試着用字符串進行比較的方法是the_permalink() 此方法滿足is_null()方法,但它在調用它的打印網址。

+3

郵政正是你的if語句。注意:var_dump()是一個非常有用的函數...告訴你類型,值,以及它是否是一個字符串,長度。 – Oberst 2014-09-26 22:04:52

+0

這與WordPress無關。使用var_dump,並獲取變量的類型,並轉換變量。 – 2014-09-26 22:45:37

回答

0
$your_string = "something"; 
$returned_method_value = your_function(); 

if($your_string === $returned_method_value){ //=== for type check, if you don't want to know the type use == 
    //Do something 
} 
+0

這在技術上是正確的,但看起來OP的問題有些不清楚。即使寬鬆的比較,如果條件返回'false',那麼嚴格比較如何返回'true'呢? – 2014-09-26 22:05:40

0

你可以嘗試gettype() 沒有下劃線。

,如果你對相同或不同類型的檢查,那麼你可以做什麼波諾說與

if($type1 === $type2) 
{ 
    //do something 
} 

也行,張貼一些代碼,向我們展示了將是非常有益的。除非我們能夠看到代碼,否則我們無法確切知道什麼是錯誤的。

0

as Anthory Saldana Jr.表示,使用gettype()而不是get_type()

如果我理解正確的你,這是你在找什麼:

function testFunction($input) { 
    return $input; 
} 

echo gettype(testFunction(1))."<br>"; 
echo gettype(testFunction("a"))."<br>"; 

/* Prints: 
* integer 
* string 
*/ 

這裏有一個phiddle證明:http://phiddle.net/3