여기에는 tools 및 tool_use라는 두 개의 테이블이 있습니다. 이array_search 함수가 값을 반환하지 않습니다.
id name tools_names quantity type
13 cutting player cutting playerA,cutting playerB,cutting playerC 3 engineer
12 REFLECTORS REFLECTORSA,REFLECTORSB 2 team
tool_use 테이블 내가 제외 tools_names를 표시하려면이
id user_id type tools
8 siraj engineer cutting playerA,cutting playerB
7 siraj team REFLECTORSB
6 siraj team REFLECTORSA
모양처럼
도구 테이블 보인다 삽입하지만, 전체 tools_names이 바로 그겁니다 결과를 표시하는 동안 테이블을 tool_use 삽입 테이블에있는 것처럼 보입니다. 내 통제가 있습니다.
public function ajax_tools()
{
$data['tools']=$this->Tools_model->view_available_tools($_POST['type']);
foreach ($data['tools'] as $key=>$val) {
$data['toolss'][] =explode(',',$val['tools_names']);
}
$data['tools_names'] = $this->Tools_model->get_tool_names($_POST['type'])->result();
foreach ($data['tools_names'] as $row)
{
if (($key =array_search($row->tools,$data['toolss'])) !== false)
{
unset($data['toolss'][$key]);
$data['toolss'] = array_values($data['toolss']);
}
}
return $data['toolss'];
$this->load->view('ajax_tools',$data);
}
여기이 당신 array_search
, 당신은 가정 cutting playerA,cutting playerB
을 포함 $row->tools
를 검색하려는
그것은해야하지 "$ data [ 'tools']"를 반환하지 않고 "$ data [ 'toolss']"를 반환하지 않습니까? – deChristo
다른 변수 (도구 대 도구)를 나타 내기 위해 여분의 문자를 사용하지 마십시오. -> 항상 설명하는 이름을 사용하십시오 (loadedTools 대 toolNames). - CleanCode –
이 문제가됩니다. –