我有一個(gè)像這樣的字符串:../../FolderName$Username$Password我需要將這三樣?xùn)|西(文件夾,用戶名和密碼的路徑)分成各自的變量,這給我?guī)?lái)了麻煩。$path = substr($_REQUEST["filename"],0, strpos($_REQUEST["filename"],'$',0)); //Gets the filepath SUCCESSFULLY$username = substr($_REQUEST["filename"],strpos($_REQUEST["filename"],'$',0),strpos($realtmp,'$',strpos($_REQUEST["filename"],'$',0))); //Error, can't get the username properly, it is empty so I probably have a syntax error, but in general I don't know how to structure it.
1 回答

湖上湖
TA貢獻(xiàn)2003條經(jīng)驗(yàn) 獲得超2個(gè)贊
正則表達(dá)式是解決此問(wèn)題的最佳方法...正則表達(dá)式捕獲組[1]包括直到但不包括“ $”的第一個(gè)實(shí)例的所有內(nèi)容。捕獲組[2]的工作原理相同,捕獲直到但不包括“ $”的第二個(gè)實(shí)例的所有內(nèi)容。捕獲組[3]包括字符串末尾的所有內(nèi)容。
<?php
$Filename= 'filename$username$password';
preg_match('/([^$]*)[$]([^$]*)[$]([^$]*)/', $Filename, $re);
$File = $re[1];
$Username = $re[2];
$Password = $re[3];
echo "File:{$File}\n";
echo "Username:{$Username}\n";
echo "Password:{$Password}\n";
?>
編輯:但是,如其他答案所述,從不建議將密碼存儲(chǔ)為純文本
編輯2:([[^ $] *)表示您正在“捕獲一組”為“最多$”的字符。
- 1 回答
- 0 關(guān)注
- 151 瀏覽
添加回答
舉報(bào)
0/150
提交
取消