php 在字符串指定位置插入新字符的簡單實(shí)現(xiàn)

字號:


    下面小編就為大家?guī)硪黄猵hp 在字符串指定位置插入新字符的簡單實(shí)現(xiàn)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。
    因?yàn)轫?xiàng)目用到DataTable表格加載后臺數(shù)據(jù),要連表查詢虛擬機(jī)選中的策略狀態(tài),所以想到先把策略表內(nèi)容取出來,組成一個(gè)'<select><option value="1"></option>[n個(gè)option]</select>'字符串,在遍歷虛擬機(jī)列表時(shí)把他的策略值拼成 'value="1"' 這樣的字符串,再利用explode()和implode() 函數(shù),組成新的字符串返回給前臺,就實(shí)現(xiàn)了選中狀態(tài)。
    $option = '<select>';
      // 取出所有策略
      $sla_query = $this->db->select('sla_id, name')->get('sla');
        $sla_res = $sla_query->result_array();
        if (!empty($sla_res)) {
          $option .= '<option value="0">未保護(hù)</option>';
          foreach ($sla_res as $k1 => $v1) {
            $option .= '<option value="' . $v1['sla_id'] . '">' . $v1['name'] . '</option>';
          }
          $option .= '</select>';
        } else {
          $option .= '<option value="0">未保護(hù)</option></select>';
        }
      // 選中默認(rèn)的保護(hù)策略
      $vm_query = $this->db->select('sla_id')->where('vm_id', $vm_id)->get('task_vm', 1);
      $vm_res = $vm_query->row_array();
      if (is_null($vm_res['sla_id'])) $res['sla_id'] = 0;
      $selected = 'value="' . $vm_res['sla_id'] . '"';
      $new_str_arr = explode($selected, $option);
      $new_option = implode(" {$selected} selected", $new_str_arr);
    以上就是小編為大家?guī)淼膒hp 在字符串指定位置插入新字符的簡單實(shí)現(xiàn)全部內(nèi)容了