PHPMyAdmin设置数据库连接端口代码
代码如下 | 复制代码 |
/* Authentication type and info */ |
比如MySQL的端口设置为3308,可以把配置文件设置为:$cfg['Servers'][$i]['port'] = ’3308′;
有时我们的数组是动态生成了,我们也不知道数组是几维的,下面我来给各位同学介绍php判断数组是一维、二维、还是多维方法,有需要了解的朋友可进入参考。
列一
代码如下 | 复制代码 |
<?php /** * 返回数组的维度 * @param [type] $arr [description] * @return [type] [description] */ function arrayLevel($arr){ $al = array(0); function aL($arr,&$al,$level=0){ if(is_array($arr)){ $level++; $al[] = $level; foreach($arr as $v){ aL($v,$al,$level); } } } aL($arr,$al); return max($al); } ?> |
例二
可以判断是一维的,还是二维的,或是几维的数组:
代码如下 | 复制代码 |
function getmaxdim($vDim) 验证过可以使用. //测试 |
首先来说说buffer,它是一个内存地址空间,为4096(1kb)【在php.ini配置文件中找到output_buffering配 置】,php有php output_buffering机制,php代码在执行的时候,并不是立即将内容输出,而是想将echo/print内容输出到buffer,buffer满的时候才会将数据交给系统内核交由tcp传给浏览器显示,当开启php php output_buffering机制(默认是开启的,可以通过ob_start()函数开启)后,只有当php buffer中的数据达到了设置值,才会将buffer中 的数据发送给浏览器。但是浏览器也是有缓存的,一些版本的浏览当数据达到256字节的时候才输出内容,
ob_start()函数:打开输出缓冲区.
函数格式 void ob_start(void)
说明:当缓冲区激活时,所有来自PHP程序的非文件头信息均不会发送,而是保存在内部缓冲区。为了输出缓冲区的内容,可以使用ob_end_flush()或flush()输出缓冲区的内容。
Flush:刷新缓冲区的内容,输出。
函数格式:flush()
说明:这个函数经常使用,效率很高。
ob_get_contents :返回内部缓冲区的内容。
函数格式:string ob_get_contents(void)
说明:这个函数会返回当前缓冲区中的内容,如果输出缓冲区没有激活,则返回 FALSE.
ob_get_length:返回内部缓冲区的长度。
函数格式:int ob_get_length(void)
说明:这个函数会返回当前缓冲区中的长度;和ob_get_contents一样,如果输出缓冲区没有激活,则返回 FALSE.
ob_end_clean:删除内部缓冲区的内容,并且关闭内部缓冲区
函数格式:void ob_end_clean(void)
说明:这个函数不会输出内部缓冲区的内容而是把它删除
ob_end_flush:发送内部缓冲区的内容到浏览器,并且关闭输出缓冲区
函数格式:void ob_end_flush(void)
说明:这个函数发送输出缓冲区的内容(如果有的话)
ob_implicit_flush:打开或关闭绝对刷新
函数格式:void ob_implicit_flush ([int flag])
说明:默认为关闭缓冲区,打开绝对输出后,每个脚本输出都直接发送到浏览器,不再需要调用 flush()
flush()可以将等待输出的内容立即发送到客户端,而ob_flush()只有等待到buffer满的时候才输出,可以通过下面一个简单的php实例来验证下:
实例
代码如下 | 复制代码 |
<?php |
生成html原理分析
我们把要生成的标签写成一个模板文件,然后再利用php读取把指定标签替换成我们要替换 内容就可以了,现在主流的dedecms系统也是这么做的
生成静态页面代码。
模板即尚未填充内容html文件。例如:
代码如下 | 复制代码 |
temp.html <HTML> <TITLE>{ title }</TITLE> <BODY> this is a { file } fileArray;s templets </BODY> <?php $title = "拓迈国际测试模板"; $file = "TwoMax Inter test templet,<br>author:Matrix@Two_Max"; $fp = fopen ("temp.html","r"); $content = fread ($fp,filesize ("temp.html")); $content .= str_replace ("{ file }",$file,$content); $content .= str_replace ("{ title }",$title,$content); echo $content; ?> |
这样一个超简单的php生成静态页面的功能就实现了,但实现应用中这个不实用的,下面我介绍一个从数据库到生成实例。
1.创建测试数据库test,建立user表如下(自己插入几条测试数据库):
代码如下 | 复制代码 |
|
2.建立连接数据文件conn.php
代码如下 | 复制代码 |
<?php $dsn = "mysql:host=localhost;dbname=test;"; $user = "root"; $password = ""; try{ $dbh = new PDO($dsn,$user,$password); }catch(PDOException $e){ echo "连接失败".$e->getMessage(); } ?> |
3.显示新闻列表(news.php),注意,其连接为静态html连接,这时还没生成,当然链接打不开:
代码如下 | 复制代码 |
<meta http-equiv="content-type" content="text/html;charset=utf-8" /> <a href="add.php">添加文章</a> <hr> <?php require_once "conn.php"; $sql = "select * from news"; foreach($dbh->query($sql) as $row){ echo "<a href='news_{$row['id']}.html'>{$row['title']}</a>----<a href='add.php?id={$row['id']}'>修改文章</a><br>"; } ?> |
4.添加修改文章页面:
代码如下 | 复制代码 |
<meta http-equiv="content-type" content="text/html;charset=utf-8" /> <?php //获取修改的内容 if($_GET['id']){ require_once "conn.php"; $sql = "select * from news where id={$_GET['id']}"; $res = $dbh->query($sql)->fetch(); } ?> <form action="action.php" method="post"> 标题:<input type="text" name="title" value="<?=@$res['title']?>"/><br/> 内容:<textarea name="content" col=40 row=4><?=@$res['content']?></textarea><br/> <input type="hidden" name="id" value="<?=$_GET['id']?>" /> <input type="submit" name="submit" value="<?php echo $_GET['id'] ? '修改' : '添加'?>" /> </form> |
5.用于生成静态文件的页面模板template.html
代码如下 | 复制代码 |
|
6.action.php当然是用来生成和更新静态文件的:
代码如下 | 复制代码 |
|
这样一个完整生php生成静态页面的系统就完成了。
静态变量
动态变量当函数执行完之后,其存储空间会自动释放。而静态变量则当函数执行完后,存储空间仍然存储其变量。如果想利用函数的变量结果在进行计算,就需要将变量设置为静态变量。
php静态变量的设置方法是在变量前加”static”符号。
实例:
代码如下 | 复制代码 |
<?php |
动态变量
当我们定义了一个变量,就相当于在服务器申请了一个存储空间。动态变量即值不断变化的量,特点是当函数运行完成后,其变量存储空间的值就会自动释放。就比如货车拉货,运到目的地后就卸货,然后返回在拉。
实例:
代码如下 | 复制代码 |
<?php |
全局变量
前面学习了局部变量,其值只在一定范围内有效,如果要实现跨域调用,则要用到全局变量。
php定义全局变量:全局变量的声明只要在变量名前加上”global”就可以了,定义了全局变量之后,主程序的变量可以被函数内部调用,同样地函数内的变量也可以被主程序所用。
实例1:
代码如下 | 复制代码 |
<?php |
局部变量
在php语言中,变量都有一定的作用范围,一旦离开,变量将失去意义或者发生改变,称之为变量作用域。就好象局域网,只在组建的办公室或者宿舍有效,一旦超出这个范围将连接不到网络。按变量的作用范围可以分为局部变量和全局变量,这里先讲局部变量。
php局部变量值函数内定义的变量只在函数内使用,函数外无效;同样地,函数外定义的变量如果没有传递,在函数内也无效。
实例:
代码如下 | 复制代码 |
<?php function fun(){ $a1=5; echo $a2; } fun(); $a2=10; echo $a1; ?> |
以上代码运行后什么也没有输出。
变量函数
变量不仅可以用一些英文字母等字符等义, 也可以对函数定义。如果将一个变量名后加上”()”符号,php将寻找与变量的值相同的函数执行,称之为变量函数。
实例:
代码如下 | 复制代码 |
<?php |
相关文章
- 操作类就是把一些常用的一系列的数据库或相关操作写在一个类中,这样调用时我们只要调用类文件,如果要执行相关操作就直接调用类文件中的方法函数就可以实现了,下面整理了...2016-11-25
- 本文给大家分享C#连接SQL数据库和查询数据功能的操作技巧,本文通过图文并茂的形式给大家介绍的非常详细,需要的朋友参考下吧...2021-05-17
- 这篇文章主要介绍了C#从数据库读取图片并保存的方法,帮助大家更好的理解和使用c#,感兴趣的朋友可以了解下...2021-01-16
- 这篇文章主要介绍了Intellij IDEA连接Navicat数据库的方法,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借价值,需要的朋友可以参考下...2021-03-25
- 在开发过程中,我们经常会将日期时间的毫秒数存放到数据库,但是它对应的时间看起来就十分不方便,我们可以使用一些函数将毫秒转换成date格式。 一、 在MySQL中,有内置的函数from_unixtime()来做相应的转换,使用如下: 复制...2014-05-31
- 有一种方法,可以不打开网站而直接查看到这个网站的源代码.. 这样可以有效地防止误入恶意网站... 在浏览器地址栏输入: view-source:http://...2016-09-20
- <?php require('path.inc.php'); header('content-Type: text/html; charset=utf-8'); $borough_id = intval($_GET['id']); if(!$borough_id){ echo ' ...2016-11-25
- C#使用System.IO中的文件操作方法在Windows系统中处理本地文件相当顺手,这里我们还总结了在Oracle中保存文件的方法,嗯,接下来就来看看整理的C#操作本地文件及保存文件到数据库的基本方法总结...2020-06-25
- 本文实例讲述了JS基于Mootools实现的个性菜单效果代码。分享给大家供大家参考,具体如下:这里演示基于Mootools做的带动画的垂直型菜单,是一个初学者写的,用来学习Mootools的使用有帮助,下载时请注意要将外部引用的mootools...2015-10-23
- 通过内网连另外一台机器的mysql服务, 确发现速度N慢! 等了大约几十秒才等到提示输入密码。 但是ping mysql所在服务器却很快! 想到很久之前有过类似的经验, telnet等一些服务在连接请求的时候,会做一些反向域名解析(如果...2015-10-21
- 本文实例讲述了JS+CSS实现分类动态选择及移动功能效果代码。分享给大家供大家参考,具体如下:这是一个类似选项卡功能的选择插件,与普通的TAb区别是加入了动画效果,多用于商品类网站,用作商品分类功能,不过其它网站也可以用,...2015-10-21
- 本文实例讲述了JS实现自定义简单网页软键盘效果。分享给大家供大家参考,具体如下:这是一款自定义的简单点的网页软键盘,没有使用任何控件,仅是为了练习JavaScript编写水平,安全性方面没有过多考虑,有顾虑的可以不用,目的是学...2015-11-08
- 某些时候,例如为了搭建一个测试环境,或者克隆一个网站,需要复制一个已存在的mysql数据库。使用以下方法,可以非常简单地实现。假设已经存在的数据库名字叫db1,想要复制一份,命名为newdb。步骤如下:1. 首先创建新的数据库newd...2015-10-21
- php 取除连续空格与换行代码,这些我们都用到str_replace与正则函数 第一种: $content=str_replace("n","",$content); echo $content; 第二种: $content=preg_replac...2016-11-25
- mysqldump命令的用法1、导出所有库系统命令行mysqldump -uusername -ppassword --all-databases > all.sql 2、导入所有库mysql命令行mysql>source all.sql; 3、导出某些库系统命令行mysqldump -uusername -ppassword...2015-10-21
- php简单用户登陆程序代码 这些教程很对初学者来讲是很有用的哦,这款就下面这一点点代码了哦。 <center> <p> </p> <p> </p> <form name="form1...2016-11-25
- 公司一些wordpress网站由于下载的插件存在恶意代码,导致整个服务器所有网站PHP文件都存在恶意代码,就写了个简单的脚本清除。恶意代码示例...2015-10-23
- 1005:创建表失败1006:创建数据库失败1007:数据库已存在,创建数据库失败1008:数据库不存在,删除数据库失败1009:不能删除数据库文件导致删除数据库失败1010:不能删除数据目录导致删除数据库失败1011:删除数据库...2013-09-23
- 本文实例讲述了JS实现双击屏幕滚动效果代码。分享给大家供大家参考,具体如下:这里演示双击滚屏效果代码的实现方法,不知道有觉得有用处的没,现在网上还有很多还在用这个特效的呢,代码分享给大家吧。运行效果截图如下:在线演...2015-10-30
- phpmyadmin config.inc.php配置示例...2013-09-29