2012-01-30 63 views
0

我有一個文本框的值 我必須找出文本值中的%符號 任何人都可以告訴我該怎麼做?Preg匹配查找文本框中的%值

我有一個包含一定的價值的文本框,我必須找出文本中是否含有%符號或不

$camp_ttllimpression=$_POST['camp_ttllimpression']; 
$camp_ttllclicks=$_POST['camp_ttllclicks']; 
$camp_ttlleads=$_POST['camp_ttlleads']; 
$camp_ttllsales=$_POST['camp_ttllsales']; 
$hid=$_POST['hid']; 
$camp_cpa_amnt=$_POST['camp_cpa_amnt']; 
$camp_cpm_amnt=$_POST['camp_cpm_amnt']; 
$camp_cpc_amnt=$_POST['camp_cpc_amnt']; 
$camp_cpl_amnt=$_POST['camp_cpl_amnt']; 
$camp_cpm_budgt=($camp_ttllimpression * $camp_cpm_amnt)/1000; 
$camp_cpc_budgt=$camp_ttllclicks * $camp_cpc_amnt; 
$camp_cpl_budgt=$camp_ttlleads * $camp_cpl_amnt; 
$camp_cpa_budgt=$camp_ttllsales * $camp_cpa_amnt; 
if($hid=="%") { echo Open;} else { echo $camp_cpa_budgt;} 
+0

請忽略 – 2012-01-30 13:48:56

+0

你的意思是PHP變量「%是文某處該文本框「或」%是該文本框的唯一內容「? – 2012-01-30 13:53:08

回答

1

爲替$_POST['textfield']正確的密鑰,因爲它是不是從你的問題不清楚。 preg_match()不是必需的 - 使用簡單的字符串操作可以更好地完成。

// To find out if it contains a % anywhere... 
if (strpos($_POST['texfield'], '%') !== FALSE) { 
    // Contais a % 
} 

// To find out if it contains only a % 
if ($_POST['texfield'] === '%') { 
    // Contains only % 
} 
+0

'strpos(...)!== FALSE',否則它會返回字符串中第一個字符的0(falsy) – knittl 2012-01-30 13:54:47

+0

您的'strpos'條件是錯誤的。如果位置是'0',那麼它被視爲假。使用'strpos(...)!== false' – hsz 2012-01-30 13:54:59

+0

@Knittl您在評論時已經修復。 – 2012-01-30 13:55:26

1

我不明白你的問題完全地,但希望你想這樣的事情, 使用strpos

if(strpos($hid,"%") !== false)

+0

你的'strpos'條件不對。如果位置是'0',那麼它被視爲假。使用strpos(...)!== false' – hsz 2012-01-30 13:55:26

+0

與Michael:'strpos(...)!== FALSE'相同的註釋,否則它不適用於字符串的第一個位置 – knittl 2012-01-30 13:56:02

+0

Thanks!編輯相同.. – Rikesh 2012-01-30 13:56:26