2017-07-29 48 views
0

相同值我試圖在Codeigniter中比較兩個值,但結果始終爲假,即使值和類型相同。 我在CodeIgniter中使用這段代碼。 下面的代碼。無法得到真正的結果Codeigniter(PHP)

$return_name = $this->db->get('feegroup'); 
$data = $return_name->result(); 
foreach($data as $d) 
{ 
    $name = $d->name; 
    if(($name) === ($this->input->post("name"))) 
    { 
     $this->session->set_flashdata('error_message',"Sorry cannot create $name fee group, you cannot have two similar fee groups. Either edit or delete $name fee group or change name to create a new fee group."); 
     redirect(base_url("feegroup/add")); 
    }#EOF IF 
}#EOF foreach 

我已經使用修整(),strlen的(),IS_STRING(),以查看它顯示真實每次的結果,但在比較相同的數據則返回false。

如果從DB值來樣品和若用戶類型樣品返回false,但如果從DB值來樣品和如用戶鍵入樣品返回true 它不檢查的案例。

例如:

1父===父=真

2父===父=假

3父===薩姆=假

4薩姆= == sam = False

5 heLLO === hello = False

+0

你想要的是'父=== parent'返回TRUE? –

+0

@HamzaAbdaoui:是的,親愛的。 –

回答

1

試試這個

if(strcasecmp($name,$this->input->post("name")) === 0) 
+0

它確實有效,但它爲什麼不按照我這樣做的方式工作。 –

+0

===檢查兩者是否相同並且不能使用==它區分大小寫 –

3

您使用strtolower功能將文本轉換爲小寫和比較正確的

if(strtolower($name) === strtolower($this->input->post("name"))) 
+1

這個答案將工作 – kishor10d

+0

@Jasshh安德魯斯,這種方法將工作! –

+0

謝謝@HamzaAbdaoui – Bhargav