php 在字符串指定位置插入新字符

  因为项目用到DataTable表格加载后台数据,要连表查询虚拟机选中的策略状态,所以想到先把策略表内容取出来,组成一个‘<select><option value="1"></option>[n个option]</select>‘字符串,在遍历虚拟机列表时把他的策略值拼成 ‘value="1"‘ 这样的字符串,再利用explode()implode() 函数,组成新的字符串返回给前台,就实现了选中状态。

 1    $option = ‘<select class="sla_list">‘;
 2
 3    // 取出所有策略
 4    $sla_query = $this->db->select(‘sla_id, name‘)->get(‘sla‘);
 5         $sla_res = $sla_query->result_array();
 6         if (!empty($sla_res)) {
 7             $option .= ‘<option value="0">未保护</option>‘;
 8             foreach ($sla_res as $k1 => $v1) {
 9                 $option .= ‘<option value="‘ . $v1[‘sla_id‘] . ‘">‘ . $v1[‘name‘] . ‘</option>‘;
10             }
11             $option .= ‘</select>‘;
12
13         } else {
14             $option .= ‘<option value="0">未保护</option></select>‘;
15         }
16
17
18    // 选中默认的保护策略
19    $vm_query = $this->db->select(‘sla_id‘)->where(‘vm_id‘, $vm_id)->get(‘task_vm‘, 1);
20    $vm_res = $vm_query->row_array();
21    if (is_null($vm_res[‘sla_id‘])) $res[‘sla_id‘] = 0;
22    $selected = ‘value="‘ . $vm_res[‘sla_id‘] . ‘"‘;
23    $new_str_arr = explode($selected, $option);
24    $new_option = implode(" {$selected} selected", $new_str_arr);
时间: 2024-12-29 11:46:17

php 在字符串指定位置插入新字符的相关文章

java格式化字符串,在指定位置插入指定字符串,兼容中英文以及特殊字符,例如:换行,用于解决生成pdf换行问题等问题

原因: 由于html转pdf时,不能自动换行,因此才有下面的代码. 注释:完全模拟html页面的自动换行! package test; import java.io.UnsupportedEncodingException; /** * 解决pdf换行问题,在指定位置插入指定字符串,兼容中英文以及特殊字符 * * @author xg君 * */ public class app { public static void main(String[] args) throws Unsupporte

利用RandomAccessFile类在指定文件指定位置插入内容

package File; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.io.RandomAccessFile; /*利用RandomAccessFile类在指定文件指定位置插入内容.*/ public class InsertContent { public static void ins

在Word指定位置插入富文本域值(html文本)

遇到此问题,首先想到的就是各种百度.结果度娘了一会并没有发现有用的有效的解决方法,哎,看来还得靠自己啊. 首先整理了下手头上的资源,一是HtmlAgilityPack,专门解析Html文本用的:二是我有ASPOSE.Word. 再整理下思路:在Word中插入Html,首先有一点是肯定的,Word跟Html都是Document结构,这点应该是没啥怀疑的.如此的话就感觉好办多了,无非就是Document上插入几个节点,在Html插入节点的方式完全可以运用到此地方. 那么第一种解决方法就是:首先把Wo

如何在JS数组特定索引处指定位置插入元素?

需求: 将一个元素插入到现有数组的特定索引处.听起来很容易和常见,但需要一点时间来研究它. // 原来的数组var array = ["one", "two", "four"];// splice(position, numberOfItemsToRemove, item)// 拼接函数(索引位置, 要删除元素的数量, 元素)array.splice(2, 0, "three"); // www.jbxue.comarray;

从字符串指定位置删除指定个数的字符

#include "stdafx.h" #include <iostream> #include <string> using namespace std; char *delete_chars(char *str,int pos,int len) { char *p=str+pos-1; int tt=strlen(str); if (pos<1||(pos>tt)) //pos小于1 或者pos超出字符串长度 { return str; } if

关于文本输入框获取光标位置以及指定位置插入内容

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title></title> <script src="http://libs.baidu.com/jquery/1.9.0/jquery.js"></script> </head> <body> &l

js 指定位置插入html标签(可编辑div)

demo效果如下: html代码部分如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>

在JS数组指定位置插入元素

很多与数组有关的任务听起来很简单,但实际情况并不总是如此,而开发人员在很多时候也用不到他.最近我碰到了这样一个需求: 将一个元素插入到现有数组的特定索引处.听起来很容易和常见,但需要一点时间来研究它. // 原来的数组 var array = ["one", "two", "four"]; // splice(position, numberOfItemsToRemove, item) // 拼接函数(索引位置, 要删除元素的数量, 元素) ar

将richTextBox中的内容写入txt文件发现不换行(解决方法),在richTextBox指定位置插入文字

string pathname = dt.ToString().Replace(":", ""); string str = richTextBoxResult.Text; str = str.Replace("\n", "\r\n");     //关键 File.AppendAllText(@"D:\" + pathname + ".txt", str, Encoding.Defau