php无需mysql留言本程序代码(基于xml)
php中操作xml文档我们会使用SimpleXMLElement函数,我们先了解一下SimpleXMLElement函数用法
SimpleXML 函数允许您把 XML 转换为对象。
通过普通的属性选择器或数组迭代器,可以处理这个对象,就像处理任何其他对象一样。
例子
xml文档格式
代码如下 | 复制代码 |
<?php $filename='guestbook.xml'; /* |
去除所有空白
代码如下 | 复制代码 |
function delete($str) { $str = trim($str); $str = ereg_replace("\t","",$str); $str = ereg_replace("\r\n","",$str); $str = ereg_replace("\r","",$str); $str = ereg_replace("\n","",$str); $str = ereg_replace(" ","",$str); return trim($str); } |
去除所有注释用preg_replace()函数把注释替换成空(是空,不是空格)。
去掉字符串中的空格 str_replace(' ','',$cat_name)
代码如下 | 复制代码 |
$str = ” This line contains\tliberal \r\n use of whitespace.\n\n”; $str = trim($str);// 首先去掉头尾空格 $str = preg_replace(’/\s(?=\s)/’, ‘’, $str);// 接着去掉两个空格以上的 $str = preg_replace(’/[\n\r\t]/’, ‘ ‘, $str);// 最后将非空格替换为一个空格 |
使用上面的例子可以去掉所有多余的空格。
首先使用TRim()去头尾空格,
接着用preg_replace()去掉重复的空格。
当中的(?=)表示只匹配后面的空格跟随前面的空格的空格。
代码如下 | 复制代码 |
<?php <?php |
补充一个:php注释和去除空格
代码如下 | 复制代码 |
|
遍历出来的效果如下
程序代码
index.php 里面的jquery文件大家可百度下载一个,因为这是用来实现一个效果的
代码如下 | 复制代码 |
<script src="jquery/jquery-1.3.1.js" type="text/javascript"></script> $(".simpleTree").children("li").find("ul").hide(); }else{ })
</script> include("function.php"); $path="目录/";//目录名 echo "</ul></li>"; |
function.php 这个文件包含了遍历目录的函数了
代码如下 | 复制代码 |
<?php files_count($path."/".$file, $i); } } //============= } //echo files_count("目录/目录1/3/"); //=============================//
if(is_dir($path."/".$file)){
$bar=scandir($path."/".$file);
echo "<li class='file'><a href='".$path."/".$file."'>".$file."</a></li>"; } } |
如果我们直接使用date函数获取日期显示的是数字的,如下
代码如下 | 复制代码 |
<?php |
输出的
2014-10-11
那么我们如果想得到
二零一四年十月十一日
怎么处理呢,后来看到一个朋友写了一句话函数
代码如下 | 复制代码 |
<?php |
输出结果:
二零一四年十月十一日
php中数组遍历方法有很多种,如有:for,foreach,while(),list(),each()这些函数与方法都要我们在数组遍历中会用到的,下面给大家介绍一下。1. 使用for语句循环遍历数组
a. 其它语言(只有这一种方式)
b. PHP中这种方式不是我们首选方式
c. 数组必须是索引数组,而且下标还必须是连续的 索引数组下标还可以不连序,数组还有关联数组)
代码如下 | 复制代码 |
< ?php |
以上代码的问题,在于for的第二个表达式会导致代码执行很慢--因为每次循环时都要 计算一遍数组的长度。由于数组的长度始终不变,我们可以用一个中间变量来存储数组长度, 然后用这个变量作为for循环的第二个表达式。这样在循环的时候就可以直接使用该变量的值, 不用每次重新计算。 如下:
代码如下 | 复制代码 |
< ?php |
2. 使用foreach语句循环遍历数组
foreach(数组变量 as 变量值){
循环体
}
a. 循环次数由数组的元素个数决定
b. 每一次循环都会将数组中的元素分别赋值给后面变量
foreach(数组变量 as 下标变量=> 值变量){
}
例子
代码如下 | 复制代码 |
foreach遍历3维数组 |
3. while() list() each() 组合循环遍历数组
each()函数,
a. 需要一个数组作为参数
b. 返回来的也是一个数组
c. 返回来的数组是0, 1, key, value四个下标(固定的)
0和key下标是当前参数数组元素的?
1和value下标是当前对数数组元素的值
d. 默认认当前元素就是第一个元素
e. 每执行一次后就会将当前元素向后移动
f. 如果到最后的元素再执行这个函数,则返回false
使用each遍历数组的示例代码如下:
代码如下 | 复制代码 |
<?php //使用each函数遍历数组 $arrGoogle=array('google','Gmail','Chrome','Android'); //第一次使用each取得当前键值对,并且将指针移到下一个位置 $arrG=each($arrGoogle); //打印结果,并且换行以清晰显示结果 print_r($arrG); print '<br>'; $arrGmail=each($arrGoogle); print_r($arrGmail); print '<br>'; $arrChrome=each($arrGoogle); print_r($arrChrome); print '<br>'; $arrAndroid=each($arrGoogle); print_r($arrAndroid); print '<br>'; //当指针位于数组末尾再次执行函数each,如果是这样再次执行结果返回false $empty=each($arrGoogle); //如果指针无法继续后移返回false if($empty==false){ print '指针以位于数组末尾,无法在向后移,故返回false'; } ?> |
注意:该函数的参数和返回值(在执行该函数前指针不位于数组末尾时)都为数组,在执行函数前数组指针位于数组末尾时再次执行该函数返回值为false
开始的位置是第一个元素,每(正常)执行一次该函数,指针向后移到下一个地址
list()函数
a. list()=array(); 需要将一个数组赋值给这个函数
b. 数组中的元素个数,要和list()函数中的参数个数相同
c. 数组中的每个元素值会赋值list()函数中的每个参数,list()将每个参数转为变量
d. list()只能接收索引数组
e. 按索引的下标的顺序
这不是真正的函数,而是PHP的语言结构。list()用一步操作给一组变量进赋值,即把数组中的值赋给一些变量。list()仅能用于数字索引的数组并假定数字索引从0开始。语法格式如下所示:
list(mixed varname,mixed ...)=array_expression //list()语句的语法格式
list()语句和其它函数在使用上有很大的区别,并不是直接接收一个数组作为参数。而是通过“=”去处符以赋值的方式,将数组中每个元素的值,对应的赋给list()函数中的每个参数。list()函数又将它中的每个参数转换为直接可以在脚本中使用的变量。使用方法如下 :
代码如下 | 复制代码 |
<?php $info=array('coffee','brown','caffeine'); //声明一个索引数组$info list($drink,$color,$power)=$info; //将数组中的所有元素转为变量 echo "$drink is $color and $power makes it special.n";//输出的三个变量值是数组中三个元素的值 list($drink, ,$power)=$info; //将数组中的部分元素变为变量 echo "$drink has $power.n"; //输出的两个变更值是数组中的前两个元素的值 list(,,$power)=$info; //跳过前两个变量只将数组中第三个元素的值转为变量 echo "I need $power!n"; //输出的一个变量值是数组中桃花汛三个元素的值勤 ?> |
通过上例了解list()函数的用法之后,将each()函数和list()函数结合起来使用。代码如下:
代码如下 | 复制代码 |
<?php |
while() 函数
while()循环的语法格式如下:
代码如下 | 复制代码 |
while( list($key,$value) = each(array_expressin) ){ 循环体; } |
使用这种组合改写前面使用foreach遍历过的一维数组。代码如下所示:
代码如下 | 复制代码 |
<?php |
while() 遍历数据是需要结合list或each函数配置才可以遍历哦,否则 它单独是无法完成数组遍历的哦。
相关文章
- 这篇文章主要介绍了C#开发Windows窗体应用程序的简单操作步骤,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-04-12
- 本文通过例子,讲述了C++调用C#的DLL程序的方法,作出了以下总结,下面就让我们一起来学习吧。...2020-06-25
- 有一种方法,可以不打开网站而直接查看到这个网站的源代码.. 这样可以有效地防止误入恶意网站... 在浏览器地址栏输入: 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
- 本文实例讲述了JS基于Mootools实现的个性菜单效果代码。分享给大家供大家参考,具体如下:这里演示基于Mootools做的带动画的垂直型菜单,是一个初学者写的,用来学习Mootools的使用有帮助,下载时请注意要将外部引用的mootools...2015-10-23
- 本文通过两个示例讲解了一下Process类调用外部应用程序的基本用法,并简单讲解了StartInfo属性,有需要的朋友可以参考一下。...2020-06-25
- 这篇文章主要介绍了微信小程序 页面传值详解的相关资料,需要的朋友可以参考下...2017-03-13
- 本文实例讲述了JS+CSS实现分类动态选择及移动功能效果代码。分享给大家供大家参考,具体如下:这是一个类似选项卡功能的选择插件,与普通的TAb区别是加入了动画效果,多用于商品类网站,用作商品分类功能,不过其它网站也可以用,...2015-10-21
- 本文实例讲述了JS实现自定义简单网页软键盘效果。分享给大家供大家参考,具体如下:这是一款自定义的简单点的网页软键盘,没有使用任何控件,仅是为了练习JavaScript编写水平,安全性方面没有过多考虑,有顾虑的可以不用,目的是学...2015-11-08
- php 取除连续空格与换行代码,这些我们都用到str_replace与正则函数 第一种: $content=str_replace("n","",$content); echo $content; 第二种: $content=preg_replac...2016-11-25
- php简单用户登陆程序代码 这些教程很对初学者来讲是很有用的哦,这款就下面这一点点代码了哦。 <center> <p> </p> <p> </p> <form name="form1...2016-11-25
- 公司一些wordpress网站由于下载的插件存在恶意代码,导致整个服务器所有网站PHP文件都存在恶意代码,就写了个简单的脚本清除。恶意代码示例...2015-10-23
- 大概有如下步骤 新建项目Bejs 新建文件package.json 新建文件Gruntfile.js 命令行执行grunt任务 一、新建项目Bejs源码放在src下,该目录有两个js文件,selector.js和ajax.js。编译后代码放在dest,这个grunt会...2014-06-07
- 其实挺简单的就是if(navigator.userAgent.indexOf('UCBrowser') > -1) {alert("uc浏览器");}else{//不是uc浏览器执行的操作}如果想测试某个浏览器的特征可以通过如下方法获取JS获取浏览器信息 浏览器代码名称:navigator...2015-11-08
- 本文实例讲述了JS实现双击屏幕滚动效果代码。分享给大家供大家参考,具体如下:这里演示双击滚屏效果代码的实现方法,不知道有觉得有用处的没,现在网上还有很多还在用这个特效的呢,代码分享给大家吧。运行效果截图如下:在线演...2015-10-30
- 一、日期减去天数等于第二个日期function cc(dd,dadd){//可以加上错误处理var a = new Date(dd)a = a.valueOf()a = a - dadd * 24 * 60 * 60 * 1000a = new Date(a)alert(a.getFullYear() + "年" + (a.getMonth() +...2015-11-08
- 这篇文章主要介绍了uniapp微信小程序:key失效的解决方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2021-01-20
- 微信支付,即便交了保证金,你还是处理测试阶段,不能正式发布。必须到你通过程序测试提交订单、发货通知等数据到微信的系统中,才能申请发布。然后,因为在微信中是通过JS方式调用API,必须在微信后台设置支付授权目录,而且要到...2014-05-31
- 本文实例讲述了PHP常用的小程序代码段。分享给大家供大家参考,具体如下:1.计算两个时间的相差几天$startdate=strtotime("2009-12-09");$enddate=strtotime("2009-12-05");上面的php时间日期函数strtotime已经把字符串...2015-11-24
将c#编写的程序打包成应用程序的实现步骤分享(安装,卸载) 图文
时常会写用c#一些程序,但如何将他们和photoshop一样的大型软件打成一个压缩包,以便于发布....2020-06-25