我有一個包含逗號分隔字符串的變量。這是通過使用implode()
函數從數組元素動態生成的。所以有時它不包含任何內容,有時它包含用逗號分隔的1/2/3/4個字符串。我想檢查在這個逗號分隔的字符串中是否存在stirng其他字符串,如果它存在,那麼執行裏面寫入的命令if。但是我面臨的一個問題是,它從來沒有檢測到字符串"Other"
內逗號分隔值,雖然是目前的山雀。任何人都可以在這方面幫助我嗎? 供您參考下面是我的代碼:以下情況下strpos實現有什麼問題嗎?
$form_data['que_issue'] = implode(",", $request['que_issue']);
if(strpos($form_data['que_issue'],"Other")) {
echo "In If";
die;
if(!$this->mValidator->validate($form_data['que_issue_comment'], "required", "true"))
$this->mValidator->push_error($errors_msgs['que_issue_comment_blank'], 'que_issue_comment');
elseif(!$this->mValidator->validate($form_data['que_issue_comment'], 'maxlength', '100'))
this->mValidator->push_error($errors_msgs['que_issue_comment_length_invalid'], 'que_issue_comment');
} else
echo "In a else";
die;//Its always going in else part only
在此先感謝。
如果'Other'出現在開頭的字符串,'strpos'回報'0'和你的病情失敗。你必須增加與'false'的比較:'strpos($ form_data ['que_issue'],「Other」!== false' – hindmost