2017-03-28 8 views
0
Array 
(
    [expert_skills] => ,1,2,3,7 
    [inter_skills] => ,9,10,7,8,9 
    [beginner_skills] => ,6,8 
) 

이 배열은 expert_skills, inter_skills, beginner_skills가 언급 된 값으로 배열로 처리되기를 원합니다. 기본적으로 이들은 다른 테이블에서 저장 한 ID입니다.PHP 배열 및 함몰 값 가져 오기

그러나 가져올 수 없습니다. 검색 한 결과,이 값 (오른쪽)을 폭발시켜 배열에 넣으면 모든 값이 고유 한 위치를 가지므로 내파시키는 방법을 찾았습니다. 정확히 그래서 내가 여기에 여기

$sql_r = "select expert_skills, inter_skills, beginner_skills from user_personal_details WHERE upd_user_id = '". $_SESSION["user_id"] ."'"; 

$skills_render = connection()->query($sql_r); 


echo "<pre>"; 
print_r($skills_render); 
echo "</pre>"; 

에서

편집을 내 수행 흥분 내가 예상 결과를보고 인 print_r jsut를 가져와 한

echo $skills_render['0']['expert_skills']; 

후 바로 에코 expert_skills

$arr=explode(",",$skills_render['0']['expert_skills']); 

echo "<pre>"; 
print_r($arr); 
echo "</pre>"; 

다음 foreach는 루프

foreach ($arr as $key => $value) { 

    $sql45 = "select skill_name from user_skills WHERE id = '". $value ."'"; 

    $skills_render_value = connection()->query($sql45); 

    echo "<pre>"; 
    print_r($skills_render_value); 
    echo "</pre>"; 
} 

나는 내가 원하는 것을 가지고 생각하는 다른 데이터베이스에서 실제 데이터를 가져올 수 있지만 array_map를 사용하여 지저분한

+1

시도한 코드를 – 131

+0

시도 했습니까? – hassan

+0

그리고 실제 배열은 어떻게 생겼습니까? – hassan

답변

0

보인다 :

$arr = array (
    'expert_skills' => ',1,2,3,7', 
    'inter_skills' => ',9,10,7,8,9', 
    'beginner_skills' => ',6,8' 
); 

$arr = array_map(function ($v) { 
    return array_filter(explode(',', $v)); 
}, $arr); 

print_r($arr); 

라이브 뷰 : https://3v4l.org/tDjbl

+0

감사합니다 hassan 나는 이것을 시도 할 것입니다 :) – waq

+0

응답이있는 경우 문제가있는 경우 – hassan