php php写入数据库返回值 例子

Keyboard Shortcuts?
Next menu item
Previous menu item
Previous man page
Next man page
Scroll to bottom
Scroll to top
Goto homepage
Goto search(current page)
Focus search box
Change language:
Brazilian Portuguese
Chinese (Simplified)
手册中所有示例的列表
There are no user contributed notes for this page.PHP面试题:请说明 PHP 中传值与传引用的区别
在当今的互联网大军中,不少人顺应时代潮流,选择了PHP开发作为自己的发展方向,进行。今天,优就业的老师来给大家讲一讲:说明 PHP 中传值与传引用的区别。什么时候传值什么时候传引用?(更多内容推荐:)
按值传递:函数范围内对值的任何改变在函数外部都会被忽略
按引用传递:函数范围内对值的任何改变在函数外部也能反映出这些修改
优缺点:按值传递时,php必须复制值。特别是对于大型的字符串和对象来说,这将会是一个代价很大的操作。按引用传递则不需要复制值,对于性能提高很有好处。
function test(&$a) {$a=$a+100; }$b=1;echo $b;//输出1test($b); //这里$b传递给函数的其实是$b的变量内容所处的内存地址,通过在函数里改变$a的值 就可以改变$b的值了 echo &&;echo $b;//输出101
官方微信更多精彩,扫码关注 或微信搜索:ujiuye
官方微博更多精彩,扫码关注 或微博搜索:优就业
注:本站稿件未经许可不得转载,转载请保留出处及源文件地址。
(责任编辑:zhangjs)
关键词阅读
免费声明:本站所提供真题均来源于网友提供或网络搜集,由本站编辑整理,仅供个人研究、交流学习使用,不涉及商业盈利目的。如涉及版权问题,请联系本站管理员予以更改或删除。
优就业官方微信扫描二维码,即可与小U亲密互动
优就业官方QQ号
咨询电话(09:00-22:00)400-650-7353
IT培训友情链接
|||||||||||||||||||||||||||||||||||||
(点击一键加群)php备份数据库脚本的几个例子
作者:用户
本文讲的是php备份数据库脚本的几个例子,
// 备份数据库
$host = &localhost&;
$user = &root&; //数据库账号
$password = &&; //数据库密码
// 备份数据库
$host = "localhost";
$user = "root"; //数据库账号
$password = ""; //数据库密码
$dbname = "mysql"; //数据库名称
// 这里的账号、密码、名称都是从页面传过来的
if (!mysql_connect($host, $user, $password)) // 连接mysql数据库
echo '数据库连接失败,请核对后再试';
if (!mysql_select_db($dbname)) // 是否存在该数据库
echo '不存在数据库:' . $dbname . ',请核对后再试';
mysql_query("set names 'utf8'");
$mysql = "set charset utf8;\r\n";
$q1 = mysql_query("show tables");
while ($t = mysql_fetch_array($q1))
$table = $t[0];
$q2 = mysql_query("show create table `$table`");
$sql = mysql_fetch_array($q2);
$mysql .= $sql['Create Table'] . ";\r\n";
$q3 = mysql_query("select * from `$table`");
while ($data = mysql_fetch_assoc($q3))
$keys = array_keys($data);
$keys = array_map('addslashes', $keys);
$keys = join('`,`', $keys);
$keys = "`" . $keys . "`";
$vals = array_values($data);
$vals = array_map('addslashes', $vals);
$vals = join("','", $vals);
$vals = "'" . $vals . "'";
$mysql .= "insert into `$table`($keys) values($vals);\r\n";
$filename = $dbname . date('Ymjgi') . ".sql"; //存放路径,默认存放到项目最外层
$fp = fopen($filename, 'w');
fputs($fp, $mysql);
fclose($fp);
echo "数据备份成功";
#!/usr/bin/php www.111cn.net
header('Content-Type:text/charset=utf-8');
define('BACK_PATH', dirname(__FILE__));
为空数组就备份所有数据库
$back_databases = array('learning','wp');
$mysql_host = 'localhost';
$mysql_user = 'root';
$mysql_passwd = 'root';
if($conn = mysql_connect($mysql_host, $mysql_user, $mysql_passwd)){
$databases = array();
mysql_select_db('mysql', $conn);
=mysql_query('show databases',$conn);
while($row = mysql_fetch_array($query))
if(empty($row))
$database = $row[0];
if(!empty($back_databases) && !in_array($database, $back_databases))
$sql_dir = BACK_PATH . "/{$database}.sql";
$execs = "mysqldump --user={$mysql_user} --password={$mysql_passwd} {$database} & " . $sql_
system($execs);
if(file_exists($sql_dir . '.gz')) {
unlink($sql_dir . '.gz');
system('gzip ' . $sql_dir);
$host="##mysql服务器地址##";
$user="##登录帐号##";
$password="##登录密码##";
$dbname="##数据库名##";
$filename="##备份文件路径##";
mysql_connect($host,$user,$password);
mysql_select_db($dbname);
$mysql.="CREATE DATABASE IF NOT EXISTS `".$dbname."`;\r\n";
$mysql.="USE `".$dbname."`;\r\n\r\n";
$q0=mysql_query("set names utf8");
$q1=mysql_query("show tables");
while($t=mysql_fetch_array($q1)){
$table=$t[0];
$mysql.="DROP TABLE IF EXISTS `".$table."`;\r\n";
$q2=mysql_query("show create table `$table`");
$sql=mysql_fetch_array($q2);
$mysql.=$sql['Create Table'].";\r\n\r\n";
$q3=mysql_query("select * from `$table`");
while($data=mysql_fetch_assoc($q3)){
$keys=array_keys($data);
$keys=array_map('addslashes',$keys);
$keys=join('`,`',$keys);
$keys="`".$keys."`";
$vals=array_values($data);
$vals=array_map('addslashes',$vals);
$vals=join("','",$vals);
$vals="'".$vals."'";
$mysql.="insert into `$table`($keys) values($vals);\r\n";
$mysql.="\r\n";
$fp = fopen($filename,'wb');
fputs($fp,$mysql);
fclose($fp);
include_once('lib/pclzip.lib.php');
$archive = new PclZip($filename.'.zip');
$v_list = $archive-&create($filename);
if ($v_list == 0) {
die("Error : ".$archive-&errorInfo(true));
if(file_exists($filename)){
unlink($filename);
echo "Mysql's backup successfully to ".$filename.".zip";
Zip打包备份代码,几乎就是全抄demo,太方便了:
include_once('lib/pclzip.lib.php');
$src="##源路径##";
$dest="##目标zip路径##";
$archive = new PclZip($dest);
$v_list = $archive-&create($src);
if ($v_list == 0) {
die("Error : ".$archive-&errorInfo(true));
print("Success");
pclzip.lib.php这个压缩包文件大家百度去下载这里未提供。
以上是云栖社区小编为您精心准备的的内容,在云栖社区的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索数据库
数据库自动备份脚本、oracle数据库备份脚本、mysql数据库备份脚本、数据库备份脚本、linux备份数据库脚本,以便于您获取更多的相关知识。
稳定可靠、可弹性伸缩的在线数据库服务,全球最受欢迎的开源数据库之一
6款热门基础云产品6个月免费体验;2款产品1年体验;1款产品2年体验
弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率
开发者常用软件,超百款实用软件一站式提供
云栖社区()为您免费提供相关信息,包括
,所有相关内容均不代表云栖社区的意见!php把session写入数据库示例
字体:[ ] 类型:转载 时间:
这篇文章主要介绍了php把session写入数据库示例,需要的朋友可以参考下
代码如下:&?phpclass session_handler {&protected $maxlifetime =&protected $dbHandle =&public $config =&public static function init($args) {&&return new self($args);&}&public function __construct($args) {&&$this-&config = $&&$this-&maxlifetime = get_cfg_var("session.gc_maxlifetime");&&session_set_save_handler(&&array($this, "open"),&&array($this, "close"),&&array($this, "read"),&&array($this, "write"),&&array($this, "destroy"),&&array($this, "gc"));&}&public function open() {&&$this-&link = mysqli_connect(&&$this-&config['host'], &&$this-&config['user'], &&$this-&config['password'], &&$this-&config['database']);&&mysqli_set_charset($this-&link, "utf8");&&$sql = 'CREATE TABLE IF NOT EXISTS `%s` (&&`session_id` varchar(255) NOT NULL,&&`session_data` text,&&`session_expires` char(10) NOT NULL,&&PRIMARY KEY (`session_id`)&&) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_';&&$sql = sprintf($sql, $this-&config['table']);&&mysqli_query($this-&link, $sql);&&&}&public function close() {&&&}&&public function read($session_id) {&&if(empty($session_id))&&$sql = 'SELECT `session_data` AS `data` FROM `%s` WHERE `session_id` = "%s" AND `session_expires` & "%u"';&&$sql = sprintf($sql, &&mysqli_real_escape_string($this-&link, $this-&config['table']), &&mysqli_real_escape_string($this-&link, $session_id),&&time());&&$result = mysqli_query($this-&link, $sql);&&$row = mysqli_fetch_assoc($result);&&return $row['data'];&}&public function write($session_id, $session_data) {&&if(empty($session_id))&&$newExpires = time() + $this-&&&$sql = 'REPLACE INTO `%s` SET `session_id` = "%s", `session_data` = "%s", `session_expires` = "%u"';&&$sql = sprintf($sql, &&mysqli_real_escape_string($this-&link, $this-&config['table']), &&mysqli_real_escape_string($this-&link, $session_id),&&mysqli_real_escape_string($this-&link, $session_data),&&$newExpires);&&$result = mysqli_query($this-&link, $sql);&&return mysqli_affected_rows($this-&link);&&& }&public function destroy($session_id) {&&$sql = 'DELETE FROM `%s` WHERE `session_id` = "%s"';&&$sql = sprintf($sql, &&mysqli_real_escape_string($this-&link, $this-&config['table']), &&mysqli_real_escape_string($this-&link, $session_id));
&&$result = mysqli_query($this-&link, $sql);&&return mysqli_affected_rows($this-&link);&&& }&public function gc() {&&$sql = 'DELETE FROM `%s` WHERE `session_expires` & "%u"';&&$sql = sprintf($sql, &&mysqli_real_escape_string($this-&link, $this-&config['table']), &&time());&&$result = mysqli_query($this-&link, $sql);&&return mysqli_affected_rows($this-&link);&&& }}
class session {
&public static $collection =&public static function open($clean = false, $token = false) {&&if($clean) ob_end_clean();&&if($token) session_id($token);&&session_start();&&self::$collection = $_SESSION;&}&public static function id() {&&$num_args = func_num_args();&&if($num_args) {&&&$args = func_get_arg(0);&&&return session_id($args);&&}else{&&&return session_id();&&}&}&public static function get($name) {&&return isset($_SESSION[$name]) ? $_SESSION[$name] :&}&public static function set($name, $value) {&&$_SESSION[$name] = $&&&}&public static function delete($name) {&&if(!isset($_SESSION[$name]))&&unset($_SESSION[$name]);&&&}&public static function destroy() {&&session_destroy();&}}
$config = array("host"=& "127.0.0.1","user"=& "root","password"=& "123456","database"=& "test","charset"=& "utf8","table"=& "user_session");
session_handler::init($config);session::open();session::set("profile", array("id"=& 1, "user"=& "haowei", "vip-level"=& 6));
您可能感兴趣的文章:
大家感兴趣的内容
12345678910
最近更新的内容
常用在线小工具史安平是一个对编程,吉他,美食,中医,健身充满了喜爱的废材,但他没有放弃,依然孜孜不倦的行走在路上,探寻生命的意义 - 欢迎来到我的博客
当前位置:
[php]数据库插入失败,单双引号和实体标签转义
[php]数据库插入失败,单双引号和实体标签转义
字体大小: [
&&& 关于php数据库写入数据出错的问题,我曾今遇到过,原因就是单引号的问题,之前做中文网站的时候没问题,但是那天给一个客户做的洋网站却始终提示插入失败,找到了原因,是英文中单引号的问题,需要对其进行转义。
&&& 那么使用怎样的函数呢?如下:
&&&&1、addslashes — 使用反斜线引用(转义)字符串;
  返回字符串,该字符串为了数据库查询语句等的需要在某些字符前加上了反斜线。这些字符是单引号(\')、双引号(\")、反斜线(\\)与 NUL(NULL 字符)。
一个使用 addslashes() 的例子是当你要往数据库中输入数据时。例如,将名字 O\'reilly 插入到数据库中,这就需要对其进行转义。大多数据库使用 \\ 作为转义符:O\\\'reilly。这样可以将数据放入数据库中,而不会插入额外的 \\。当 PHP 指令 magic_quotes_sybase 被设置成 on 时,意味着插入 \' 时将使用 \' 进行转义。默认情况下,PHP 指令 magic_quotes_gpc 为 on,它主要是对所有的 GET、POST 和 COOKIE 数据自动运行 addslashes()。不要对已经被 magic_quotes_gpc 转义过的字符串使用 addslashes(),因为这样会导致双层转义。遇到这种情况时可以使用函数 get_magic_quotes_gpc() 进行检测。
2、stripslashes — 去掉字符串的反斜杠引用(转义)
  即同addslashes()做相反的工作;
if (!get_magic_quotes_gpc()) {
$crname = addslashes($_POST[\'crname\']);
$crname = $_POST[\'crname\' ];
$sql = \"INSERT INTO lastnames (lastname) VALUES (\'$crname\')\";
&&&& 除了单双引号转义,接下来说说实体标签转化的问题,他同样会影响到页面的显示甚至脚本的执行。遇到关于留言板之类的可以让用户输入信息的地方,这些地方都是需要注意的,因为不做转实体之类的话,html代码、script脚本可以轻易的被输入保存,并被其他用户执行;比如;如果不转实体标签,将会被浏览器执行
&&&&1、htmlspecialchars() 转义特别的字符为HTML实体;
&&& \'&\' (ampersand) becomes \'&\'
&&& \'\"\' (double quote) becomes \'&\' when ENT_NOQUOTES is not set.
&&& \'\'\' (single quote) becomes \''\' only when ENT_QUOTES is set.
&&& \'<\' (less than) becomes \'&\'
&&& \'>\' (greater than) becomes \'&\'
&&&&2、htmlspecialchars_decode()将实体转成HTML代码,函数1的反函数
&&&&3、 htmlentities()这个是全部转换html实体,和htmlspecialchars()区别在于,这个函数是转义全部的字符,而htmlspecialchars()仅仅转义上面限定的5个特殊字符!
本文来自:绵阳史安平个人博客.励志于每一位朋友
欢迎转载,转载请注明本文链接:
/arc-151.html
猜你也喜欢的:}

我要回帖

更多关于 tinkphp 写入数据库 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信