php 批量过滤非法字符
function testAddslashes($array) {
if(!get_magic_quotes_gpc()) {
if(is_array($array)) {
foreach($array as $key => $val) {
$array[$key] = testAddslashes($val);
}
} else {
$array = addslashes($array);
}
$array=str_replace("&#x","& # x",$array); //过滤一些不安全
字符s
$array=str_replace("<","<",$array); //过滤<
}
return $array;
}
if( $_POST)
{
print_r( $_POST );
echo '过滤前<hr /> ';
$_POST = testAddslashes($_POST);
echo '<hr />过滤后<br />';
echo $_POST['textfield'];
}
?>
<!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>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
</head>
<body>
<form action="" method="post" enctype="multipart/form-data" name="form1"
id="form1">
<label>
<input type="text" name="textfield" />
</label>
<p>
<label>
<input type="text" name="textfield2" />
</label>
<label></label>
</p>
<p>
<label>
<input type="submit" name="Submit" value="提交" />
</label>
</p>
</form>
</body>
</html>
/*
将日间日期转换成时间时间戳
strtotime(time,now)参数 描述
time 规定要解析的时间字符串。
now 用来计算返回值的时间戳。如果省略该参数,则使用当前时间。
<?php
echo strtotime("now"), " ";
echo strtotime("10 September 2000"), " ";
echo strtotime("+1 day"), " ";
echo strtotime("+1 week"), " ";
echo strtotime("+1 week 2 days 4 hours 2 seconds"), " ";
echo strtotime("next Thursday"), " ";
echo strtotime("last Monday"), " ";
?>
<?php
$str = 'Not Good';
// previous to PHP 5.1.0 you would compare with -1, instead of false
if (($timestamp = strtotime($str)) === false) {
echo "The string ($str) is bogus";
} else {
echo "$str == " . date('l dS o F Y h:i:s A', $timestamp);
}
?>
再看strtotime实例
*/
echo strtotime('2010-2-14'),"<br />";
echo date('Y-m-d',strtotime('2010-2-14'));
//输出值
1266076800
2010-02-14
//你应该在strtotime(),你决定什么不能做。例如
<?php
# on 2/8/2010
date('m/d/y', strtotime('first day')); # 02/01/10
date('m/d/y', strtotime('last day')); # 02/28/10
date('m/d/y', strtotime('last day next month')); # 03/31/10
date('m/d/y', strtotime('last day last month')); # 01/31/10
date('m/d/y', strtotime('2009-12 last day')); # 12/31/09 - this doesn't work if you reverse the order of the year and month
date('m/d/y', strtotime('2009-03 last day')); # 03/31/09
date('m/d/y', strtotime('2009-03')); # 03/01/09
date('m/d/y', strtotime('last day of march 2009')); # 03/31/09
date('m/d/y', strtotime('last day of march')); # 03/31/10
?>
//用php curl_init函数
$ch = curl_init();
$timeout = 5;
curl_setopt ($ch, CURLOPT_URL, "$url");
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($ch, CURLOPT_USERAGENT, "Mozilla/4.0
(compatible; MSIE 6.0; Windows NT 5.1; SV1)");
curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
$contents = curl_exec($ch);
curl_close($ch);
//方法用php fsockopen
function ReadPR($link)
{
$fp = fsockopen ("www.google.com", 80, $errno, $errstr, 30);
if (!$fp)
{
echo "$errstr ($errno) ";
exit(1);
}
else
{
$out = "GET $link HTTP/1.0 ";
$out .= "Host: toolbarqueries.google.com ";
$out .= "User-Agent: Mozilla/4.0 (compatible; GoogleToolbar
2.0.114.9-big; Linux 2.6) ";
$out .= "Connection: Close ";
fwrite($fp, $out);
do{
$line = fgets($fp, 128);
}while ($line !== " ");
$data = fread($fp,8192);
fclose ($fp);
return $data;
}
}
$now_time = time(); //当前时间
$for_time = mktime(0,0,0,2,24,2010);//设置一个日期
$n_time = $now_time-$for_time;
if( $n_time > 2592000 )
{
$echo = round($n_time/2592000).'月前';
}
elseif( $n_time > 6048000 )
{
$echo = round($n_time/604800).'周前';
}
elseif( $n_time > 86400 )
{
$echo = round($n_time/86400).'天前';
}
elseif( $n_time > 3600 )
{
$echo = round($n_time/3600).'小时前';
}
elseif( $n_time > 60 )
{
$echo = round($n_time/60).'分钟前';
}
else
{
$echo = $n_time.'秒前';
}
echo $echo;
如何创建一个CSV文件
方法1 - 使用HTTP头
至于在Word和Excel,您需要添加头信息到PHP脚本的例子。
下面的代码片断创建一个指定的表包括其列名CSV文件。然后会提示用户下载此文件。
<?php
$table = 'table_name';
$outstr = NULL;
header("Content-Type: application/csv");
header("Content-Disposition: attachment;Filename=cars-models.csv");
$conn = mysql教程_connect("localhost", "mysql_user", "mysql_password");
mysql_select_db("db",$conn);
// Query database to get column names
$result = mysql_query("show columns from $table",$conn);
// Write column names
while($row = mysql_fetch_array($result)){
$outstr.= $row['Field'].',';
}
$outstr = substr($outstr, 0, -1)." ";
// Query database to get data
$result = mysql_query("select * from $table",$conn);
// Write data rows
while ($row = mysql_fetch_assoc($result)) {
$outstr.= join(',', $row)." ";
}
echo $outstr;
mysql_close($conn);
?>
方法2 - 使用fputcsv()
在fputcsv()函数格式作为CSV行并将其写入一个打开的文件。欲了解更多信息,看
一看http://php.net/manual/en/function.fputcsv.php看看。
下面的代码片断创建一个指定表的列名,包括CSV文件,并将其发送到浏览器。
<?php
$table = 'table_name';
$filename = tempnam(sys_get_temp_dir(), "csv");
$conn = mysql_connect("localhost", "mysql_user", "mysql_password");
mysql_select_db("db",$conn);
$file = fopen($filename,"w");
// Write column names
$result = mysql_query("show columns from $table",$conn);
for ($i = 0; $i < mysql_num_rows($result); $i++) {
$colArray[$i] = mysql_fetch_assoc($result);
$fieldArray[$i] = $colArray[$i]['Field'];
}
fputcsv($file,$fieldArray);
// Write data rows
$result = mysql_query("select * from $table",$conn);
for ($i = 0; $i < mysql_num_rows($result); $i++) {
$dataArray[$i] = mysql_fetch_assoc($result);
}
foreach ($dataArray as $line) {
fputcsv($file,$line);
}
fclose($file);
header("Content-Type: application/csv");
header("Content-Disposition: attachment;Filename=cars-models.csv");
// send file to browser
readfile($filename);
unlink($filename);
?>
相关文章
- 这篇文章主要介绍了解决Mybatis 大数据量的批量insert问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-01-09
- 这篇文章主要介绍了cmd下过滤文件名称的两种方法,需要的朋友可以参考下...2020-06-30
- 今天在写一个vbs的时候,发现中文乱码,后来写好代码正常运行的代码压缩一下给了同事,发现报无效字符,经过验证后发现原来是编码的问题导致,这里就为大家分享一下...2020-06-30
- C# 去除首尾字符或字符串的方法,需要的朋友可以参考一下...2020-06-25
- 正则表达式的作用用来描述字符串的特征。本文重点给大家介绍C# 中使用正则表达式匹配字符的含义,非常不错,具有一定的参考借鉴价值,需要的朋友参考下吧...2020-06-25
- 这篇文章主要介绍了PHP正则表达式过滤html标签属性的相关内容,实用性非常,感兴趣的朋友参考下吧...2016-05-06
- 这篇文章主要介绍了Mybatis批量修改时出现报错问题解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下...2020-11-10
- 在使用url进行参数传递时,经常会传递一些 中文名(或含有特殊字符)的参数或URL地址,在后台处理时会发生转换错误。在有些传递页面使用GB2312,而在接收页面使用UTF8,这样接收到的参 数就可能会与原来发生不一致。使用服务器端的urlEncode函数编码的URL,与使用客户端java的encodeURI函数编码的URL,结果就不 一样。...2014-04-27
- 这篇文章主要为大家介绍了R语言进行绘图时输出希腊字符上标,下标及数学公式的实现方法,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪...2021-11-06
- 这篇文章主要介绍了JavaScript过滤字符串中的中文与空格方法汇总 的相关资料,需要的朋友可以参考下...2016-03-09
- 下面小编就为大家带来一篇一个字符串中出现次数最多的字符 统计这个次数【实现代码】。小编觉得挺不错的,现在分享给大家,也给大家做个参考...2016-05-04
- 这篇文章主要介绍了C语言简单实现计算字符个数的方法,涉及C语言针对字符串的简单遍历与判定技巧,具有一定参考借鉴价值,需要的朋友可以参考下...2020-04-25
- 这篇文章主要介绍了python批量修改交换机密码的示例,帮助大家更好的理解和使用python,感兴趣的朋友可以了解下...2020-09-22
- 这篇文章主要介绍了JavaScript字符和ASCII实现互相转换,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下...2020-06-04
- 这篇文章主要介绍了golang去除多余空白字符(含制表符)的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-04-25
- 这篇文章主要给大家介绍了关于C++ string替换指定字符的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用C++具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧...2020-04-25
- 替换指定字符的方法有很多,在本文为大家详细介绍下,JS利用正则配合replace是如何做到的,喜欢的朋友可以参考下...2021-05-07
- 今天用C#输出XML文件时,发现报错,经过反复检查调试,发现是因为某处内容含有某些特殊字符,这些特殊字符是在XML里不被允许的...2020-11-03
- C# 撒列实现关键字过滤的实例,需要的朋友可以参考一下...2020-06-25
- 下面小编就为大家分享一篇c#实现输出的字符靠右对齐的示例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-06-25