Взорваться и установить, если условие php - PullRequest
0 голосов
/ 12 ноября 2018
Array ( [0] => 1 [1] => 2 )

Я пытаюсь установить условие if на основе разрешения пользователя, идея состоит в том, чтобы показать меню на основе заданных значений, если оно равно 1, будет отображаться одно меню и 2 секунды, если его оба, тогда все значения будут отображены. Пока что для отдельных значений я понял это правильно, но как это сделать для массива значений Это мой код

<?php
   $userid = $this->phpsession->get("user_id");
   $userrole = $this->phpsession->get("user_type");

   $query = $this->db->select("role_empid,role_permissions")->from('hw_role')->where('role_empid', $userid)->get()->result();
   $data = $query[0]->role_permissions;

   if($data == 1){
?>
      <li><a href="<?php echo base_url("enquiry/addEnquiry"); ?>">Add Enquiry</a></li>
      <li><a href="<?php echo base_url("enquiry"); ?>">Enquiry List</a></li>
<?php }else if($data == 2){ ?>
       <li><a href="<?php echo base_url("enquiry/proposalList"); ?>">Request For Proposal</a></li>
<?php } ?>
</ul>

Ответы [ 3 ]

0 голосов
/ 12 ноября 2018

Если $query[0]->role_permissions - это массив, который имеет различное значение, тогда вы можете попробовать:

       <ul>
       <?php for($i = 0; $i<count($data);$i++) {
       if($data[$i] == 1){ ?>

       <li><a href="<?php echo base_url("enquiry/addEnquiry"); ?>">Add Enquiry</a></li>
       <li><a href="<?php echo base_url("enquiry"); ?>">Enquiry List</a></li>

       <?php }
        if($data[$i] == 2){ ?>

       <li><a href="<?php echo base_url("enquiry/proposalList"); ?>">Request For Proposal</a></li>

       <?php }} ?>
       </ul>
0 голосов
/ 12 ноября 2018

Попробуйте

<?php
  if(in_array(1,$data)){
?>
     <li><a href="<?php echo base_url("enquiry/addEnquiry"); ?>">Add Enquiry</a></li>
     <li><a href="<?php echo base_url("enquiry"); ?>">Enquiry List</a></li>
<?php }
  if(in_array(2,$data)){ 
?>
     <li><a href="<?php echo base_url("enquiry/proposalList"); ?>">Request For Proposal</a></li>
<?php } ?>
0 голосов
/ 12 ноября 2018

, если role_permission содержит объект json, который сначала преобразует его в массив, например

$data = $query[0]->role_permissions;
$data=json_decode($data);

В противном случае напрямую проверьте условие для

$data = $query[0]->role_permissions;

if(in_array(1,$data) && in_array(2,$data))
{
}
else if(in_array(1,$data))
{
}
else if(in_array(2,$data))
{
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...