替换php字符串中的单引号为双引号的方法

 更新时间:2017年7月6日 23:49  点击:2196
小编给大家推荐的这篇文章介绍了替换php字符串中的单引号为双引号的方法,非常实用,有兴趣的同学快看看吧。

实例如下:

 代码如下复制代码

$param="{'id':཈', 'name':'hi'}";

 

$new= preg_replace('/\"/','"',$param);

本文介绍了php使用PDO事务配合表格读取大量数据插入操作实现方法,非常实用,有兴趣的同学快来看看吧。

在处理大量数据的时候,或者同时对几个表操作,而这几个表的操作要求,要么都成功,要么都失败的时候,就需要用到事物,而PDO中提供的事物,一般可以满足需求。

本篇文章,只涉及一个小例子。

在向数据库导入一个表格的时候,难免excel文件中存在部分错误,如果用常规方法,将会导致,一部分插入了数据库,一部分没有插入,会带了很大的不便。

 

 代码如下 复制代码

<?php

header("Content-Type: text/html; charset=utf-8");

error_reporting(E_ALL ^ E_NOTICE);

require_once'excel_reader2.php';//导入excel_reader文件

$data=newSpreadsheet_Excel_Reader();//创建对象

$data->setOutputEncoding('UTF-8');//设置编码格式

$data->read("example.xls");//读取excel文档*/

echo$hang=$data->sheets[0]['numRows']."行<br>";//读出一共几行

echo$lie=$data->sheets[0]['numCols']."列<br>";//读出一共几列

$dbms='mysql';

$dbname='biaoge';

$user='root';

$pwd='123456';

$host='localhost';

$dsn="$dbms:host=$host;dbname=$dbname";

try{

  $pdo=newPDO($dsn,$user,$pwd);

  $pdo->exec("SET NAMES UTF8");//设置数据库编码

  $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);//异常模式

  $pdo->beginTransaction();//开启事物

  $query="INSERT INTO test SET id1=?,id2=?,id3=?,id4=?,id5=?";//预编译插入语句

  $result=$pdo->prepare($query);

//  $result->execute(array("111","222","333","444","555"));

//  $pdo->commit();

  for($i= 1;$i<=$hang;$i++) {

    $id1=$data->sheets[0]['cells'][$i][1];

    $id2=$data->sheets[0]['cells'][$i][2];

    $id3=$data->sheets[0]['cells'][$i][3];

    $id4=$data->sheets[0]['cells'][$i][4];

    $id5=$data->sheets[0]['cells'][$i][5];

    $result->bindParam(1,$id1);//绑定参数

    $result->bindParam(2,$id2);//绑定参数

    $result->bindParam(3,$id3);//绑定参数

    $result->bindParam(4,$id4);//绑定参数

    $result->bindParam(5,$id5);//绑定参数

    echo$result->execute();//执行插入操作

  }

  $pdo->commit();//执行事物的提交操作*/

}catch(PDOException$e){

  die("Error!: ".$e->getMessage().'<br>');

  $pdo->rollBack();//执行事物的回滚操作

}

 

补充:

异常模式将会创建一个PDOException,并设置errorCode属性,它可以将执行代码封装到一个try{}catch{}语句块中。未捕获的异常将会导致脚本中断,并显示堆栈跟踪让用户了解是哪里出现了问题。
除此之外:

警告模式会产生一个PHP警告,并设置errorCode属性。如果设置的是警告模式,那么除非明确的检查错误代码,否则程序将继续按照其方式运行。

在默认模式中设置PDOStatement对象的errorCode属性,但不进行其他任何操作。

小编推荐的这篇文章介绍了使用PHPMailer发送邮件实例,非常实用,有兴趣的同学快来看看吧。

PHPMailer类源代码下载地址:https://github.com/PHPMailer/PHPMailerhttps://github.com/PHPMailer/PHPMailer

 

 代码如下 复制代码

<?php

/*

to:  邮件接收地址

subject: 邮件主题

body: 邮件内容

attachpath:附件地址

cc: 邮件抄送地址

bcc: 邮件暗抄送地址

*/

functionsend_mail($to,$subject="",$body="",$attachpath="",$cc="",$bcc="")

{

 // 对邮件内容进行必要的过滤

 $body=eregi_replace("[\]",'',$body); 

  

 // 设定时区

 date_default_timezone_set("PRC");

  

 require_once('class.phpmailer.php');

 require_once("class.smtp.php");

  

 // 实例化PHPMailer对象

 $mail=newPHPMailer();    

  

 // 设定邮件编码,默认ISO-8859-1,如果发中文此项必须设置为 UTF-8

 $mail->CharSet ="UTF-8";

  

 // 设定使用SMTP服务

 $mail->IsSMTP();

  

 // 启用 SMTP 验证功能

 $mail->SMTPAuth = true;

  

 // SMTP 安全协议

 $mail->SMTPSecure ="ssl";

  

 // SMTP 服务器

 $mail->Host ="smtp.qq.com";

  

 // SMTP服务器的端口号

 $mail->Port = 465;

  

 // SMTP服务器用户名和密码

 $mail->Username ="xxxxxx@qq.com"; 

 $mail->Password ="xxxxxx";  

  

 // 设置发件人地址和名称,名称可有可无

 $mail->SetFrom("xxxxxx@qq.com","xxxxxx");

  

 // 设置邮件接收地址和名称,第二个参数无所谓。必须用AddAddress添加邮件接收地址。AddReplyTo方法没什么用。

 //$mail->AddReplyTo("xxxxxx@163.com", "xxxxxx");

 $mailaddrs= split(",",$to);

 foreach($mailaddrsas$addres)

 {

 //校验邮箱地址是否合法

 if(filter_var($addres, FILTER_VALIDATE_EMAIL))

 {

  $mail->AddAddress($addres); 

 }

 }

  

 // 设置邮件抄送地址

 if($cc!="")

 {

 $ccaddrs= split(",",$cc);

 foreach($ccaddrsas$ccaddr)

 {

  //校验邮箱地址是否合法

  if(filter_var($ccaddr, FILTER_VALIDATE_EMAIL))

  {

  $mail->addCC($ccaddr); 

  }

 }

 }

  

 // 设置邮件暗抄送地址,私密发送

 if($bcc!="")

 {

 $bccaddrs= split(",",$bcc);

 foreach($bccaddrsas$bccaddr)

 {

  //校验邮箱地址是否合法

  if(filter_var($bccaddr, FILTER_VALIDATE_EMAIL))

  {

  $mail->addBCC($bccaddr); 

  }

 }

 }

  

 // 设置邮件主题

 $mail->Subject =$subject;

  

 // 可选项,向下兼容考虑

 $mail->AltBody ="为了查看该邮件,请切换到支持 HTML 的邮件客户端";

  

 // 设置邮件内容

 $mail->MsgHTML($body);    

  

 //使用HTML格式发送邮件

 $mail->IsHTML(true);

  

 // 添加附件,第一个参数是附件地址,第二个参数附件名

 //$mail->AddAttachment("images/phpmailer.gif");

 $mail->AddAttachment($attachpath);

  

 // 发送邮件

 if(!$mail->Send())

 {

 echo"发送失败:".$mail->ErrorInfo . PHP_EOL;

 }

 else

 {

 echo"恭喜,邮件发送成功!". PHP_EOL;

 }

}

$emailAddr="xxxxxx@163.com,xxxxxx@qq.com,";

send_mail($emailAddr,"测试邮件","<h1>使用PHPMailer类发送的邮件。</h1>","mail/20170216.gif","xxxxxx@qq.com","");

?>

 

测试结果:

说明:第44行的SMTP服务器密码为qq邮箱授权码。

登录QQ邮箱->设置->账户->POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务->生成授权码

小编给大家推荐的这篇文章介绍了php使用GD2绘制几何图形示例,非常实用,有兴趣的同学快来看看吧。

使用GD2函数不仅可以绘制线条图形,而且可以绘制填充图形,如填充圆形,填充矩形等。下面对GD2中常用的填充图形的绘制方法进行介绍。

bool imagefill( resource image, int x, int y, int color )

imagefill()函数在image图像的坐标( x, y ) (图像的左上角为(0,0))处用color颜色执行区域填充(即与(x,y)点颜色相同切相邻的点都会被填充)。

bool imagefilledarc ( resource image , int cx , int cy , int w , int h , int s , int e , int color , int style )

imagefilledarc() 在 image 所代表的图像中以 cx,cy(图像左上角为 0, 0)画一椭圆弧。成功时返回 TRUE,  或者在失败时返回 FALSE.w 和 h 分别指定了椭圆的宽和高,s 和 e 参数以角度指定了起始和结束点。style  可以是下列值按位或(OR)后的值:

IMG_ARC_PIE
IMG_ARC_CHORD
IMG_ARC_NOFILL
IMG_ARC_EDGED

IMG_ARC_PIE 和 IMG_ARC_CHORD 是互斥的;IMG_ARC_CHORD  只是用直线连接了起始和结束点,IMG_ARC_PIE  则产生圆形边界(如果两个都用,IMG_ARC_CHORD生效)。IMG_ARC_NOFILL  指明弧或弦只有轮廓,不填充。IMG_ARC_EDGED 指明用直线将起始和结束点与中心点相连,和 IMG_ARC_NOFILL  一起使用是画饼状图轮廓的好方法(而不用填充)。

bool imagefilledellipse ( resource image , int cx , int cy , int w , int h , int color )

imagefilledellipse() 在 image 所代表的图像中以 cx,cy(图像左上角为 0, 0)为中心画一个椭圆。w 和 h 分别指定了椭圆的宽和高。椭圆用 color 颜色填充。成功时返回 TRUE, 或者在失败时返回 FALSE.

bool imagefilledrectangle( resource image, int x1, int y1, int x2, int y2, int color )

该函数在image图像中绘制一个用color颜色填充了的矩形, 其左上角坐标为(x1, y1),右下角的坐标为(x2, y2)。(0,0)为图像的左上角。

例如:应用如上函数,绘制填充圆形和填充正方形,代码如下

 代码如下复制代码

<?php

  header("Content-type: image/png");//将图像输出到浏览器

  $img= imagecreate(400, 200);//创建一个400X200的画布

  $bg= imagecolorallocate($img, 0, 0, 255);//设置背景颜色

  $white= imagecolorallocate($img, 255, 255 ,255);//设置填充颜色

  imagefilledellipse($img, 100, 100, 150, 150,$white);//绘制填充圆形

  imagefilledrectangle($img, 200, 50, 300, 150,$white);//绘制填充正方形

  imagepng($img);//以png格式输出图像

  imagedestroy($img);//释放资源

运行结果如下所示

[!--infotagslink--]

相关文章

  • C#中截取字符串的的基本方法详解

    这篇文章主要介绍了C#中截取字符串的的基本方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-11-03
  • c#中判断字符串是不是数字或字母的方法

    这篇文章介绍了C#判断字符串是否数字或字母的实例,有需要的朋友可以参考一下...2020-06-25
  • PostgreSQL判断字符串是否包含目标字符串的多种方法

    这篇文章主要介绍了PostgreSQL判断字符串是否包含目标字符串的多种方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2021-02-23
  • 详解C++ string常用截取字符串方法

    这篇文章主要介绍了C++ string常用截取字符串方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-04-25
  • php字符串按照单词逐个进行反转的方法

    本文实例讲述了php字符串按照单词进行反转的方法。分享给大家供大家参考。具体分析如下:下面的php代码可以将字符串按照单词进行反转输出,实际上是现将字符串按照空格分隔到数组,然后对数组进行反转输出。...2015-03-15
  • 使用list stream: 任意对象List拼接字符串

    这篇文章主要介绍了使用list stream:任意对象List拼接字符串操作,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教...2021-09-09
  • C# 16 进制字符串转 int的方法

    这篇文章主要介绍了C# 16 进制字符串转 int的方法,非常不错,具有参考借鉴价值,需要的朋友可以参考下...2020-06-25
  • MySQL 字符串拆分操作(含分隔符的字符串截取)

    这篇文章主要介绍了MySQL 字符串拆分操作(含分隔符的字符串截取),具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-02-22
  • 获取中文字符串的实际长度代码

    JS中默认中文字符长度和其它字符长度计算方法是一样的,但某些情况下我们需要获取中文字符串的实际长度,代码如下: 复制代码 代码如下: function strLength(str) { var realLength = 0, len = str.length, charCode = -1;...2014-06-07
  • C#实现字符串转换成字节数组的简单实现方法

    这篇文章主要介绍了C#实现字符串转换成字节数组的简单实现方法,仅一行代码即可搞定,非常简单实用,需要的朋友可以参考下...2020-06-25
  • php 中英文混合字符串截取

    文章介绍一个实用的函数,我们如果用php substr来截取字符在中文上处理的很有问题,今天自己写了一个比较好的中文与英文字符截取的函数,有需要的朋友可以参考下。 ...2016-11-25
  • C#实现对字符串进行大小写切换的方法

    这篇文章主要介绍了C#实现对字符串进行大小写切换的方法,涉及C#操作字符串的技巧,具有一定参考借鉴价值,需要的朋友可以参考下...2020-06-25
  • c#将字节数组转成易读的字符串的实现

    这篇文章主要介绍了c#将字节数组转成易读的字符串的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-06-25
  • PostgreSQL 字符串处理与日期处理操作

    这篇文章主要介绍了PostgreSQL 字符串处理与日期处理操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-02-01
  • C#获取字符串后几位数的方法

    这篇文章主要介绍了C#获取字符串后几位数的方法,实例分析了C#操作字符串的技巧,具有一定参考借鉴价值,需要的朋友可以参考下...2020-06-25
  • C#判断一个字符串是否是数字或者含有某个数字的方法

    这篇文章主要介绍了C#判断一个字符串是否是数字或者含有某个数字的方法,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下...2020-06-25
  • 【C#基础】Substring截取字符串的方法小结(推荐)

    这篇文章主要介绍了Substring截取字符串方法小结,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-06-25
  • 使用PHP similar text计算两个字符串相似度

    在网站开发中,我们经常使用php similar text 计算两个字符串相似度;1,similar_text的用法 如果我想计算"ly89cn"和"ly89"的相似程度,有两种表示方法复制代码 代码如下: echo similar_text('ly89cn', 'ly89'); ...2015-11-08
  • C#实现将字符串转换成日期格式的方法

    这篇文章主要介绍了C#实现将字符串转换成日期格式的方法,涉及C#操作时间及字符串的相关技巧,非常简单实用,需要的朋友可以参考下...2020-06-25
  • C# 16进制与字符串、字节数组之间的转换

    在串口通讯过程中,经常要用到 16进制与字符串、字节数组之间的转换...2020-06-25