2013-11-26 40 views
0

字符串的最後一個位置我想獲得一個SQL查詢WHERE field LIKE '%subStr'的另一種在PHP例如如何檢查給定的詞occures在PHP

其實我想有條件不同的文件類型,所以我要檢查是否擴展名是.ppt.pptx.pptm.ppm或其他任何東西。

+0

你嘗試過什麼到目前爲止的代碼? – Damodaran

+0

我試過striPos,但是它也返回true或number,如果substr在名稱之間,我的意思是如果文件名在其名稱中包含.doc,而實際擴展名是.txt,那麼它不起作用 – Arpita

回答

1

你可以這樣來做。

$file = 'my-file.ppt'; 
$parts = pathinfo($file); 
$extensions = array("ppt", "pptx", "pptm", "ppm"); 


if (in_array($parts['extension'], $extensions)) { 
    echo "we have {$parts['extension']}"; 
} 
else { 
    echo "no matches"; 

}

2

您可以輕鬆地去掉文件名的字符串的最後一個字符來實現這一目標:

<?php 

$filename = "myFile.txt"; 
$pathinfo = pathinfo($filename); 
$extension = $pathinfo['extension']; 

switch ($extension) { 
    case "ppt": 
     echo "Extension is .ppt"; 
     break; 
    case "txt": 
     echo "Extension is .txt"; 
     break; 
} 
?> 
+0

謝謝你是一個很好的解決方案我知道這個功能。 – Arpita

2

利用array_popexplode

<?php 
$filename='new.newfile.ppt'; 
$file=explode('.',$filename); 
echo $ext = array_pop($file); // ppt 
+0

爆炸效果非常好:) – brandonscript

+1

儘管你可以在一行中使用end來實現這個功能:'$ ext = end(explode('。',$ filename));' – brandonscript

+0

@ r3mus,是的,我知道,我寫了它這樣OP就可以輕鬆理解。 –

相關問題