2017-06-23 62 views
-3

我試圖幫助朋友使用可正常工作的php表單,其中一個變量是'tourny'(這是變量,他們希望參加的比賽以及每個選項的最後幾個字符是價格,即安大略省的中西部地區青少年高爾夫 - 。$ 90.00將字符串的最後幾個字符傳遞給新變量

我想能夠將這些最後幾個字符複製到一個名爲$ tcost新變量,我已經試過了命令:

$tcost = substr(tourny, -6); 

以及:

$tcost = substr($_POST[tourny], -6); 

to to $ tcost tourny的最後6個字符 - 我不確定它是否有效,因爲當我嘗試將其傳遞給電子郵件發送者時,其餘每個變量都在[]中,我已經得到:

您的比賽費用:[$tcost]

但是,當我提交表單,所有發送電子郵件正是 - 爲$tcost

沒有價值的我不知道如果我的錯誤是在substr命令或我如何試圖將它傳遞給郵件程序。

我也嘗試使用If/Then例程來分配一個基於哪個tourny被選中並且不起作用的成本。

如果任何人有辦法,它會工作,請讓我知道。我可以通過HTML,但PHP讓我有點困惑。

+1

結束之前出現能否請您確認,如果您的字符串具有後句號與否的數值相匹配? '中西部安大略省區青少年高爾夫球 - $ 90.00.'爲$ 90.00'爲六個字符,但$ 90.00.'爲七 – Scuzzy

回答

0

在我看來,這是一個正則表達式的好方案。

這是美元符號後的字符串

// (\$\d+(?:\.\d+)?)$ 

$string = 'Midwestern Ontario District Junior Golf - $90.00'; 
if(preg_match('/\$(\d+(?:\.\d+)?)$/', $string, $matches)) 
{ 
    $cost = $matches[1]; 
    var_dump($cost); // string(5) "90.00" 
} 
相關問題