thinkphp5.0查询到的数据表中的路径是反斜杠导致无法正常显示图片怎么办?

添加到数据表中图片的路径有时会是反斜杠,这就导致了在url后面写路径的时候会识别不出来(不过src后面写路径就可以识别),所以就需要把路径中的反斜杠替换成正斜杠,代码如下:

 1 $datu = Db::query(‘select images from think_ad where ad_position_id = 22‘);
 2     $str = "";
 3     foreach($datu as $v)
 4     {
 5         $str .= implode($v);
 6         $str .= "|";
 7
 8     }
 9     $str = substr($str,0,strlen($str)-1);
10     $str=str_replace(‘\\‘,‘/‘,$str);
11     $str = explode("|",$str);
12     $this->assign(‘datu‘,$str);
时间: 2024-12-23 18:28:39

thinkphp5.0查询到的数据表中的路径是反斜杠导致无法正常显示图片怎么办?的相关文章

查询和删除数据表中重复数据的sql

1.查询表中重复数据.select * from people where peopleId in (select   peopleId   from   people   group   by   peopleId   having   count(peopleId) > 1) 2.删除表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断,只留有rowid最小的记录 delete from people where peopleId   in (select   peopleI

正则表达式,字符串中需要两个反斜杠“\\d”

这个正则表达式为什么会有两个反斜杠? "^.*?\\.(jpg|png|bmp|gif)$"上面这个正则表达式为什么有两个反斜杠呢?反斜杠点\.就能表示点.了,为什么还要在\.前面多加一个\? ----------------- 这要分两步看首先字符串中的\\被编译器解释为\         ------->  第一步,编译器将字符串转变为"正则表达式"然后作为正则表达式,\.又被正则表达式引擎解释为.   ----------------> 第二步,才

python 正则表达式中反斜杠(\)的麻烦和陷阱

这里是一点小心得:由于下面两个原因,在正则表达式中使用反斜杠就会产生了一个双重转换的问题.(1).python自身处理字符串时,反斜杠是用于转义字符 (2).正则表达式也使用反斜杠来转义字符     要匹配字符串中1个反斜杠应该怎么写正则表达式?"\\",这样行吗?试试就知道了,re模块抛异常了,因为在正则表达式中,"\\"就是一个反斜杠,对于正则表达式解析器来说,是一个转义字符,但是后面啥也没有,自然就报错了,"\\\"三个肯定是不行的,试试四

数据库字段包含反斜杠的查询处理

像下图中字段值里带有反斜杠的记录: 这种如果要查询的话,必须使用3个反斜杠才能查到,比如 like ”%D\%“ 是查不到上面两条记录的,必须使用 like ”%D\\\%“ ,原因是反斜线符号会被语法分析程序剥离一次,在进行模式匹配时,又会被剥离一次,最后会剩下一个反斜线符号接受匹配. 那么在前端查询框中输入 ”D\“ ,提交到action后,action需要将反斜杠替换为三个反斜杠,而字符串 ”D\“ 在java中接收到时是有两个反斜杠的,因为反斜杠在java中需要加一个反斜杠转义为字符,像

python 正则表达式中反斜杠(\)的麻烦和陷阱 (转)

这里是一点小心得:由于下面两个原因,在正则表达式中使用反斜杠就会产生了一个双重转换的问题.(1).python自身处理字符串时,反斜杠是用于转义字符 (2).正则表达式也使用反斜杠来转义字符     要匹配字符串中1个反斜杠应该怎么写正则表达式?"\\",这样行吗?试试就知道了,re模块抛异常了,因为在正则表达式中,"\\"就是一个反斜杠,对于正则表达式解析器来说,是一个转义字符,但是后面啥也没有,自然就报错了,"\\\"三个肯定是不行的,试试四

MySQL查询数据表中数据记录(包括多表查询)

MySQL查询数据表中数据记录(包括多表查询) MySQL查询数据表中数据记录(包括多表查询) 转自:http://www.baike369.com/content/?id=5355 在MySQL中创建数据库的目的是为了使用其中的数据. 使用select查询语句可以从数据库中把数据查询出来. select语句的语法格式如下: select selection_list // 要查询的内容,选择哪些列 from table_list // 从什么表中查询,从何处选择行 where primary_

通过 JDBC 向指定的数据表中插入一条记录,查询记录

//通过 JDBC 向指定的数据表中插入一条记录 /*  * 1.Statement: 用于执行SQl语句的对象  *  通过Connection 的createStatement()方法来获取  *  通过executeUptate(sql) 可执行sql语句  *  传入的sql 可以是 insert , update, delete 但不能是select  * 2.Connection 和 Statement 需要关闭  *  需要在finally中关闭  * 3.关闭的顺序:先关闭后获取

默认情况下,不使用of子句表示在select所有的数据表中加锁(转)

Select …forupdate语句是我们经常使用手工加锁语句.通常情况下,select语句是不会对数据加锁,妨碍影响其他的DML和DDL操作.同时,在多版本一致读机制的支持下,select语句也不会被其他类型语句所阻碍. 借助for update子句,我们可以在应用程序的层面手工实现数据加锁保护操作.本篇我们就来介绍一下这个子句的用法和功能. 下面是采自Oracle官方文档<SQLLanguage Reference>中关于for update子句的说明:(请双击点开图片查看) 从for

Oracle使用游标删除所有用户数据表中的所有记录脚本

应用场景:因为数据库中的数据涉及机密信息,希望一次性能删除掉所有数据,只保留数据表结构,供新项目开发程序用 测试结果:经查询已删除所有数据 存在问题:数据表如果存在外键的话下面脚本可能执行不成功,请自行删除或者过滤掉该表,见下图 操作办法:直接将下面的脚本内容复制到PQSQL中执行即可 --Oracle使用游标删除所有用户数据表中的所有记录脚本 declare mystring NVARCHAR2(1000):=''; --定义要输出的字符串变量 cursor mycursor is --定义游