2017-08-11 116 views
0

请帮我解决在以下情况中发现的问题如下:爆炸数组值

我想这样

array:1 [▼ 
    0 => array:1 [▼ 
    0 => "Dashboard,Employee,Lead" 
    ] 
] 

从这个

array:1 [▼ 
    0 => array:1 [▼ 
    0 => "0,4,5" 
    ] 
] 

我想要一个结果价值作为名称不是ID

这是我的代码

public function boot() 
{ 
    view()->composer('admin.sidebar', function ($view) { 
     $moduleRs = DB::table('users') 
     ->join('permissions','users.role', '=', 'permissions.role_id') 
     ->select('users.role as usersrole','permissions.role_id as 
      role_id','permissions.module_name as module_name') 
     ->where('users.role', '=', \Auth::user()->role) 
     ->get(); 
     // dd($moduleRs[0]->module_name); 
     $moduleData = null; 

这是条件检查

if (count($moduleRs) > 0) { 
    $result = []; 
    foreach($moduleRs as $row){ 
     if(!isset($result[$row->role_id])) { 
      $result[$row->role_id] = array(
       'role_id' => $row->role_id, 
       'module_name' => [$row->module_name], 
     ); 
     }else{ 
      $result[$row->role_id]['module_name'] = array_merge($result[$row->role_id]['module_name'], [$row->module_name]); 
     } 
} 

阵爆炸功能

$data=$moduleRs[0]->module_name; 
$splittedstring[] = explode(" ,",$data); 
//dd($splittedstring); 

foreach ($splittedstring as $key => $value) { 
    echo " '.$value.'<br>"; 
} 
}  

$view->with('moduleData', $moduleData); 
}); 

} 
+0

这是什么返回'module_name'=> [$ row-> module_name],你检查过吗? –

+0

雅这将返回id..sorry module_name不是一个字符串数据类型其数据库中的整数值。表名称=>模块,字段名称=>模块[仪表板,角色,权限,员工,潜在客户]获取此表值并将其存储在表中。表名=>权限,字段名=>模块名(模块表模块的ID字段名称) –

回答

0

您的查询似乎完美的我。

查看'module_name' => [$row->module_name],的结果,因为它可能是Int数据类型。

+0

它将返回0,4,5作为数组values.please不会混淆module_name不是字符串让我们把module_name当作module_id –