过滤转义字符
unction cg_stripslashes($array) {
if (is_array($array)) {
foreach ($array as $k => $v) {
$array[$k] = cg_stripslashes($v);
}
} else if (is_string($array)) {
$array = stripslashes($array);
}
return $array;
}
// 添加转义
function cg_addslashes($string) {
if(is_array($string)) {
foreach($string as $key => $val) {
$string[$key] = cg_daddslashes($val);
}
} else {
$string = addslashes($string);
}
return $string;
}
?>
/前台分页函数
function multi($num, $perpage, $curpage, $mpurl, $maxpages = 0, $page = 10, $autogoto = TRUE, $simple = FALSE) {
//global $maxpage;
$ajaxtarget = !empty($_GET['ajaxtarget']) ? " ajaxtarget="".htmlspecialchars($_GET['ajaxtarget'])."" " : '';
$multipage = '';
$mpurl .= strpos($mpurl, '?') ? '&' : '?';
$realpages = 1;
if($num > $perpage) {
$offset = 2;
$realpages = @ceil($num / $perpage);
$pages = $maxpages && $maxpages < $realpages ? $maxpages : $realpages;
//$curpage = $curpage < $realpages ? $curpage : $realpages;
if($page > $pages) {
$from = 1;
$to = $pages;
} else {
$from = $curpage - $offset;
$to = $from + $page - 1;
if($from < 1) {
$to = $curpage + 1 - $from;
$from = 1;
if($to - $from < $page) {
$to = $page;
}
} elseif($to > $pages) {
$from = $pages - $page + 1;
$to = $pages;
}
}
$multipage = ($curpage - $offset > 1 && $pages > $page ? '<a href="'.$mpurl.'page=1" class="first"'.$ajaxtarget.'>1 ...</a>' : '').
($curpage > 1 && !$simple ? '<a href="'.$mpurl.'page='.($curpage - 1).'" class="prev"'.$ajaxtarget.'>‹‹</a>' : '');
for($i = $from; $i <= $to; $i++) {
$multipage .= $i == $curpage ? '<strong>'.$i.'</strong>' :
'<a href="'.$mpurl.'page='.$i.($ajaxtarget && $i == $pages && $autogoto ? '#' : '').'"'.$ajaxtarget.'>'.$i.'</a>';
}
$multipage .= ($curpage < $pages && !$simple ? '<a href="'.$mpurl.'page='.($curpage + 1).'" class="next"'.$ajaxtarget.'>››</a>' : '').
($to < $pages ? '<a href="'.$mpurl.'page='.$pages.'" class="last"'.$ajaxtarget.'>... '.$realpages.'</a>' : '').
(!$simple && $pages > $page && !$ajaxtarget ? '<kbd><input type="text" name="custompage" size="3" onkeydown="if(event.keyCode==13) {window.location=''.$mpurl.'page='+this.value; return false;}" /></kbd>' : '');
$multipage = $multipage ? '<div class="pages">'.(!$simple ? '<em> '.$num.' </em>' : '').$multipage.'</div>' : '';
}
$maxpage = $realpages;
return $multipage;
}
下面来看看php 如何导入.sql文件的代码
<?php
if(!defined('WEBROOT')) {
die('Access Denied!');
}
class dbsql {
var $dblink = NULL;
var $queryCount = 0;
function dbconnect($dbserver, $dbuser, $dbpwd, $dbname = '', $pconnect = 0, $charset = 'utf8') {
if($pconnect) {
if(!$this->dblink = @mysql_pconnect($dbserver, $dbuser, $dbpwd)) {
$this->msghalt('Can not connect to MySQL server');
}
} else {
if(!$this->dblink = @mysql_connect($dbserver, $dbuser, $dbpwd)) {
$this->msghalt('Can not connect to MySQL server');
}
}
/* if($this->version() > '4.1') {
global $charset, $dbcharset;
if(!$dbcharset && in_array(strtolower($charset), array('gbk', 'big5', 'utf-8'))) {
$dbcharset = str_replace('-', '', $charset);
}
if($dbcharset) {
@mysql_query("SET character_set_connection=$dbcharset, character_set_results=$dbcharset, character_set_client=binary", $this->dblink);
}
if($this->version() > '5.0.1') {
@mysql_query("SET sql_mode=''", $this->dblink);
}
} */
@mysql_query('set names "utf8"');
if($dbname) {
if(!mysql_select_db($dbname, $this->dblink)) {
$this->msghalt('Can not connect to MySQL server');
}
}
}
function select_db($dbname) {
return @mysql_select_db($dbname, $this->dblink);
}
function query($sql = '') {
if($sql) {
if(!($query = mysql_query($sql,$this->dblink))) {
$this->msghalt("MYSQL Query Error!n $sql");
} else {
$this->queryCount++;
return $query;
}
} else {
return false;
}
}
function unb_query($sql = '') {
if($sql) {
if(!($query = mysql_unbuffered_query($sql,$this->dblink))) {
$this->msghalt('MYSQL Query Error!<br />'.$sql.'<br />');
} else {
$this->queryCount++;
return $query;
}
} else {
return false;
}
}
function fetch_array($query, $result_type = MYSQL_ASSOC) {
return mysql_fetch_array($query, $result_type);
}
function fetch_one($sql) {
return $this->fetch_array($this->query($sql));
}
function affected_rows() {
return mysql_affected_rows($this->dblink);
}
function num_rows($query, $q = 1)
{
if($q == 1) {
return mysql_num_rows($query);
} else {
return mysql_num_rows($this->query($query));
}
//return $query;
}
function result($query, $row) {
$query = @mysql_result($query, $row);
return $query;
}
function num_row($query) {//暂时没用
return mysql_num_rows($query);
}
function free_result($query) {
return mysql_free_result($query);
}
function insert_id() {
return ($id = mysql_insert_id($this->dblink)) >= 0 ? $id : $this->result($this->query("SELECT last_insert_id()"));
}
function num_fields($query) {
return mysql_num_fields($query);
}
function version() {
return mysql_get_server_info($this->dblink);
}
function close() {
return mysql_close($this->dblink);
}
function insert_data($tname, $data) {
$values = '';
$filed = implode(',', array_keys($data));
$filednum = count($data) - 1;
//echo $filednum;
$i = 0;
foreach($data as $key => $val) {
$values .= "'".$val."'";
if($i < $filednum) {
$i++;
$values .= ',';
}
}
$sql = "INSERT INTO ".$tname." (".$filed.") VALUES(".$values.")";
return $this->unb_query($sql);
}
function update_data($tname, $fid, $data, $whereid = 'id') {
$col = array();
foreach($data as $key => $values)
{
$col[] = $key."='".$values."'";
}
$sql = "UPDATE ".$tname." SET ".implode(',', $col)." WHERE $whereid='$fid'";
return $this->unb_query($sql);
}
function error() {
return (($this->dblink) ? mysql_error($this->dblink) : mysql_error());
}
function errno() {
return intval(($this->dblink) ? mysql_errno($this->dblink) : mysql_errno());
}
function msghalt($msg = '') {
$message = "<html>n<head>n";
$message .= "<meta content="text/html; charset=utf-8" http-equiv="Content-Type">n";
$message .= "<style type="text/css">n";
$message .= "body,p,pre {n";
$message .= "font:12px Verdana;n";
$message .= "}n";
$message .= "</style>n";
$message .= "</head>n";
$message .= "<body bgcolor="#FFFFFF" text="#000000" link="#006699" vlink="#5493B4">n";
$message .= "<p>Datebase Error:</p><pre><b>".htmlspecialchars($msg)."</b></pre>n";
$message .= "<b>Mysql error number</b>: ".$this->errno()."n<br />";
$message .= "<b>Mysql error description</b>: ".htmlspecialchars($this->error())."n<br />";
$message .= "<b>Date</b>: ".date("Y-m-d @ H:i")."n<br />";
$message .= "<b>Script</b>: http://".$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF'] .'?'.$_SERVER['QUERY_STRING']."n<br />";
$message .= "</body>n</html>";
echo $message;
exit;
}
}
/**********************
$sb = new dbsql();
$sb->dbconnect('localhost','root','','fdwp');
echo 'fdfd';
****************************/
?>
这是一个指南,您将不会有一个独立的效果或文件,本月底指南,但你会-希望-有一个了解的U n ix时间戳,让您一个强大的形式管理你的P H P应用。
注意:
此指南预期读者了解如何MySQL数据库的工作和基本知识的PHP
Unix的时间,或POSIX正时间,是一个系统的描述时间点。它被广泛用于不仅对类Unix操作系统,但在许多其它计算机系统,包括Java编程语言。这是一个编码为协调世界,并有足够的类似线性代表时间的推移,它常常是一个错误。
UNIX的时间被广泛使用的PHP 。它的数额秒之间1970年1月1号00:00:00 ( Unix的时代)和本时间,以最接近的第二位。正如你可以想像,在过去35年,现在相当大的数目!
Unix系统时间的事情之一是处理不同的Windows服务器相比, * nix中的服务器。对Linux服务器的时间戳可以积极或消极的,相当于之前和之后的Unix时代。但是Windows服务器生产-1 ,而不是消极的时间戳,或在PHP 5.1 ,它产生虚假的。
PHP有许多预先确定的职能,利用Unix的时间,职能,我们将使用包括:
日期( )可能是最常用的日期功能在PHP中,它可以产生目前的日期或选定的时间在大量的概率。表的所有字符串限定在这里可
mktime ( )已参数,每个设置时间:第二,分钟,小时,月,日及一年。第七届参数是根据每天节省但是如果此设置单独留PHP将找到的DS小时的本身。 mktime ( )返回时间戳记参数的讲话。
strtotime ( )转换成一个字符串到一个时间戳,如果不能做到这一点它会返回-1或虚假的。
时间( )返回当前的时间最接近的第二个作为一个时间戳。
情景
你有一个形式,进入数据到MySQL数据库包括日期,在不同的网页你需要回电只是其中之一您的数据库列。
解决方案:作为Unix的时间每一秒的变化,他们几乎是独一无二的,以便使用,您可以选择某行的时间戳,例如:
这解决了问题,因为所有的数据只有一列是一个数组美元,连续随时可以输出到该网页。缺点这一解决方案是,时间是一个非常准确的,如果所谓的日期,甚至第二次了它不会选择正确的数据。
你有一个截止日期为一块的工作,你想知道有多少小时你已经离开。
解决方案:您可以使用mktime功能,输入日期的截止日期和时间戳记减去这与目前的时间找出多少时间了。
你有时间和你需要显示,作为一个在不同的日期格式。
这样就大功告成了!我希望,如果你遵循了这一指导你学到一些新的PHP的时间,我希望您可以使用这个新的知识在您下次PHP的项目
PHP 文件处理
当书面申请网页,它通常重要的是能够保存数据。一般的做法是两种方式之一:写入数据到一个文件,或保存在一个数据库(如MySQL的) 。当然,更容易的方法(不需要其他技术)是写入文件,然后读取并解析它们自己。这简单的这正是我在这里讨论。
因此,让我们开始吧:
打开一个文件的阅读和写作,我们开始使用打开功能。这只是开辟了档案资源为我们在以后的使用功能
<?php
$filename = 'file.txt';
$handle = fopen($filename, 'r');
?>
值得一提的是我打开文件进行读取。请注意' R '等?这是模式的论点,并允许您使用变量$文件阅读,或写作,这取决于你的需要。
你可以看到不同的模式,开辟了档案文件的功能(根据表1 ) 。
读取一个文件,最简单的方法是利用fread方法。这需要两个参数,档案资源从以前的功能(打开)和一个长度参数。
<?php
$content = fread($handle, filesize($filename));
?>
我不得不使用文件大小,以便阅读文件的末尾。否则,该功能将不知道什么时候停止阅读。
写作到一个文件中做类似的方便。这一次,我们将只使用fwrite ,其中有两个要求论点:文件处理资源,该字符串写入(第三可选的参数是长度的内容写入) 。
<?php
$handle = fopen($filename, 'a');
fwrite($handle, 'Hello World!');
?>
我不得不重新处理美元的变量,因为以前的资源仅开放供读。
捷径
好吧,既然你知道如何打开,读,写的全部档案,很长的路,这里有一些捷径。我倾向于避免这些,但真的没有错用。请注意,这两种需要PHP5 。
而不是打开和fread ,可以简单地使用file_get_contents 。唯一的理由是需要的文件,它会返回一个字符串的内容
<?php
$contents = file_get_contents('file.txt');
?>
<?php
file_put_contents('file.txt', 'Hello World!');
?>
相关文章
- 这篇文章主要介绍了cmd下过滤文件名称的两种方法,需要的朋友可以参考下...2020-06-30
- 今天在写一个vbs的时候,发现中文乱码,后来写好代码正常运行的代码压缩一下给了同事,发现报无效字符,经过验证后发现原来是编码的问题导致,这里就为大家分享一下...2020-06-30
- C# 去除首尾字符或字符串的方法,需要的朋友可以参考一下...2020-06-25
- 正则表达式的作用用来描述字符串的特征。本文重点给大家介绍C# 中使用正则表达式匹配字符的含义,非常不错,具有一定的参考借鉴价值,需要的朋友参考下吧...2020-06-25
- 这篇文章主要介绍了PHP正则表达式过滤html标签属性的相关内容,实用性非常,感兴趣的朋友参考下吧...2016-05-06
- 这篇文章主要为大家介绍了R语言进行绘图时输出希腊字符上标,下标及数学公式的实现方法,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪...2021-11-06
- 这篇文章主要介绍了JavaScript过滤字符串中的中文与空格方法汇总 的相关资料,需要的朋友可以参考下...2016-03-09
- 这篇文章主要介绍了C语言简单实现计算字符个数的方法,涉及C语言针对字符串的简单遍历与判定技巧,具有一定参考借鉴价值,需要的朋友可以参考下...2020-04-25
- 这篇文章主要介绍了JavaScript字符和ASCII实现互相转换,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下...2020-06-04
- 这篇文章主要给大家介绍了关于C++ string替换指定字符的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用C++具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧...2020-04-25
- 这篇文章主要介绍了golang去除多余空白字符(含制表符)的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-04-25
- 替换指定字符的方法有很多,在本文为大家详细介绍下,JS利用正则配合replace是如何做到的,喜欢的朋友可以参考下...2021-05-07
- 下面小编就为大家带来一篇一个字符串中出现次数最多的字符 统计这个次数【实现代码】。小编觉得挺不错的,现在分享给大家,也给大家做个参考...2016-05-04
- 今天用C#输出XML文件时,发现报错,经过反复检查调试,发现是因为某处内容含有某些特殊字符,这些特殊字符是在XML里不被允许的...2020-11-03
- 在使用url进行参数传递时,经常会传递一些 中文名(或含有特殊字符)的参数或URL地址,在后台处理时会发生转换错误。在有些传递页面使用GB2312,而在接收页面使用UTF8,这样接收到的参 数就可能会与原来发生不一致。使用服务器端的urlEncode函数编码的URL,与使用客户端java的encodeURI函数编码的URL,结果就不 一样。...2014-04-27
- C# 撒列实现关键字过滤的实例,需要的朋友可以参考一下...2020-06-25
- 下面小编就为大家分享一篇c#实现输出的字符靠右对齐的示例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-06-25
- 今天小编就为大家分享一篇C语言实现将字符和数字串到一起,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-04-25
- 这篇文章介绍了C# 格式化字符首字母大写的方法,有需要的朋友可以参考一下...2020-06-25
- 正则表达式,又称正规表示法、常规表示法。这篇文章主要介绍了C#正则表达式转义字符介绍的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下...2020-06-25