的PHP替代是否有任何PHP方法做:JavaScript的pop()方法
var filename = $_POST["filename"];
filename = filename.split(".").pop();
我如何可以做同樣的事情上面在PHP?
的PHP替代是否有任何PHP方法做:JavaScript的pop()方法
var filename = $_POST["filename"];
filename = filename.split(".").pop();
我如何可以做同樣的事情上面在PHP?
也許這樣的事情?
$filetype = array_pop(explode('.',$filename));
它會生成一條Only variables should be passed by reference
通知。如果你想擺脫這一點,你需要:
$fileparts = explode('.',$filename);
$filetype = array_pop($fileparts);
然而,最好的方式來獲得文件的擴展名是使用pathinfo()
:
$filetype = pathinfo($filename, PATHINFO_EXTENSION);
'pathinfo()'只是給了我「。 「 –
@MohammadAreebSiddiqui:什麼'var_dump($ filename);'輸出? –
看不到...... –
在PHP中,你可能不需要轉換爲數組和彈出;獲取最後一個字符的位置,然後獲取字符串的其餘部分。從http://davidwalsh.name/php-file-extension:
substr(strrchr($file_name,'.'),1);
你可以做unset($filename[count($filename) - 1]);
。這將刪除數組中的最後一個元素。
你會想這樣做:
$filename = $_POST['filename'];
$file_arr = explode(".",$filename); // may need to escape '.' here, can't remember
$filename = array_pop($file_arr);
'array_pop()'也許? –
像這樣的問題應該關閉,如果人們不打擾像「PHP數組彈出」這樣的Google術語。 – Mark
參見http://php.net/manual/en/function.explode.php和http://php.net/manual/en/function.explode.php –