php入门学习相关函数
1.join():
定义和用法
join() 函数返回由数组元素组合成的字符串。
join() 函数是 implode() 函数的别名。
注释:join() 函数接受两种参数顺序。但是由于历史原因,explode() 是不行的,您必须保证 separator 参数在 string 参数之前才行。
注释:join() 函数的 separator 参数是可选的。但是为了向后兼容,推荐您使用使用两个参数。
语法
join(separator,array)
参数
separator:可选,规定数组元素之间放置的内容,默认是 ""(空字符串)也可以是"+","-"等等。
array:必需,要组合为字符串的数组。
2.array_keys()
定义和用法:
array_keys() 函数返回包含数组中所有键名的一个新数组。
如果提供了第二个参数,则只返回键值为该值的键名。
例如:
<?php
$a=array("Volvo"=>"XC90","BMW"=>"X5","Toyota"=>"Highlander");
print_r(array_keys($a));
?>
运行结果:
Array ( [0] => Volvo [1] => BMW [2] => Toyota )
3.array_values():
定义和用法:
array_values() 函数返回一个包含给定数组中所有键值的数组,但不保留键名。
提示:被返回的数组将使用数值键,从 0 开始并以 1 递增。
例如:
<?php
$a=array("Name"=>"Bill","Age"=>"60","Country"=>"USA");
print_r(array_values($a));
?>
运行结果:
Array ( [0] => Bill [1] => 60 [2] => USA )
4.mysql_query()函数:
mysql_query()如果里面放的是查询之类的语句,那返回的是资源,说白了就是你要查的数据结果集;如果里面放的是增删改之类的语句,那返回的是true或者false了。
如果你要使用这个数据结果集,必须用mysql_result(), mysql_fetch_array(), mysql_fetch_row()等函数获取里面的数据,就是mysql_query()得和上面几个函数配合使用。
5.mysql_fetch_assoc():
mysql_fetch_assoc会从结果集中取出一行记录,而且资源指针会往下跳,
也就是说,再用mysql_fetch_assoc时,会取得新的一行记录,
以此类推,每执行一次mysql_fetch_assoc,取一新行,直到取出最后一行,
再取时,因为已经没有下一行,就会返回false。
综上所述:
在你的第一个例子中,
$s_as=mysql_fetch_assoc($s_re);
while($s_as)
是取出结果集的第一行,第一行不为空吧,所以$s_as不等于false,所以,当你用while($s_as)时,相当于while(true),是一个死循环,应该改成:
$s_as = mysql_fetch_assoc($s_re);
while($s_as) {
$arr[] = $s_as;
$s_as = mysql_fetch_assoc($s_re); //你没写这行,所以$s_as永远不是false造成死循环。
}
第二个例子中,则不同,while($s_as=mysql_fetch_assoc($s_re)),每次取一行,当取到最后一行时,再没有一下行了,mysql_fetch_assoc就会返回flash,也就是$s_as=false,while循环就会停止
6.substr(string,start,length):
处理字符串string。
start:规定再字符串的何处开始。
length:可选,规定被返回字符串的长度。默认是知道字符串的结尾。
7.foreach():
用于遍历操作或输出数组,foreach() 仅能用于遍历数组或对象,当试图将其用于其它数据类型或者一个未初始化的变量时会产生错误.
语法:
foreach (array as $value)
statement
// 或者:
foreach (array as $key => $value)
statement
上述语法中,每次循环将当前单元的值赋给 $value 并且数组内部的指针向前移一步。在第二种语法格式中还将当前单元的键名也会在每次循环中赋给变量 $key。
https://git.coding.net/ssssdy/New_ArtclePub.git
https://git.coding.net/ssssdy/New_ArtclePub.git
8.文件路径处理函数
basename():获取文件路径的文件名.
dirname():获取文件路径的目录
9.字符串处理函数
stripos(string,find,start)
定义和用法
stripos() 函数查找字符串在另一字符串中第一次出现的位置(不区分大小写)。
注释:stripos() 函数是不区分大小写的。
注释:该函数是二进制安全的
10.floor() 函数:向下舍入为最接近的整数。
11.feof ( )函数:
int feof(FILE * stream);
所在头文件:
stdio.h
返回值:
返回非零值代表已到达文件尾
fscanf函数从一个流中执行格式化输入,fscanf遇到空格和换行时结束,注意空格时也结束。这与fgets有区别,fgets遇到空格不结束。
原型:int fscanf(FILE *stream, char *format,[argument...]);
返回值:返回实际被转换并赋值的输入项的数目。
%d:读入一个十进制整数。
%i :读入十进制,八进制,十六进制整数,与%d类似,但是在编译时通过数据前置来区分进制,如加入“0x”则是十六进制,加入“0”则为八进制。例如串“031”使用%d时会被算作31,但是使用%i时会算作25。
php入门学习相关函数的更多相关文章
- Qt入门学习——Qt 5 帮助文档的使用
Qt入门学习——Qt 5 帮助文档的使用 学习图形界面开发,肯定离不开帮助文档的使用,因为它不像 C 语言那样就那么几个函数接口,图形接口的接口可以用海量来形容,常用的我们可能能记住,其它的真的没有必 ...
- vue入门学习(基础篇)
vue入门学习总结: vue的一个组件包括三部分:template.style.script. vue的数据在data中定义使用. 数据渲染指令:v-text.v-html.{{}}. 隐藏未编译的标 ...
- Hadoop入门学习笔记---part4
紧接着<Hadoop入门学习笔记---part3>中的继续了解如何用java在程序中操作HDFS. 众所周知,对文件的操作无非是创建,查看,下载,删除.下面我们就开始应用java程序进行操 ...
- Hadoop入门学习笔记---part3
2015年元旦,好好学习,天天向上.良好的开端是成功的一半,任何学习都不能中断,只有坚持才会出结果.继续学习Hadoop.冰冻三尺,非一日之寒! 经过Hadoop的伪分布集群环境的搭建,基本对Hado ...
- PyQt4入门学习笔记(三)
# PyQt4入门学习笔记(三) PyQt4内的布局 布局方式是我们控制我们的GUI页面内各个控件的排放位置的.我们可以通过两种基本方式来控制: 1.绝对位置 2.layout类 绝对位置 这种方式要 ...
- PyQt4入门学习笔记(一)
PyQt4入门学习笔记(一) 一直没有找到什么好的pyqt4的教程,偶然在google上搜到一篇不错的入门文档,翻译过来,留以后再复习. 原始链接如下: http://zetcode.com/gui/ ...
- Hadoop入门学习笔记---part2
在<Hadoop入门学习笔记---part1>中感觉自己虽然总结的比较详细,但是始终感觉有点凌乱.不够系统化,不够简洁.经过自己的推敲和总结,现在在此处概括性的总结一下,认为在准备搭建ha ...
- Retrofit 入门学习
Retrofit 入门学习官方RetrofitAPI 官方的一个例子 public interface GitHubService { @GET("users/{user}/repos&qu ...
- MyBatis入门学习教程-使用MyBatis对表执行CRUD操作
上一篇MyBatis学习总结(一)--MyBatis快速入门中我们讲了如何使用Mybatis查询users表中的数据,算是对MyBatis有一个初步的入门了,今天讲解一下如何使用MyBatis对use ...
随机推荐
- RxJava如何结合观察者与链式处理
RxJava如何结合观察者与链式处理 Author: Dorae Date: 2018年12月3日17:10:31 转载请注明出处 一.概述 首先问自己几个问题,如果非常清楚这几个问题的目的与答案,那 ...
- Minimum Transport Cost Floyd 输出最短路
These are N cities in Spring country. Between each pair of cities there may be one transportation tr ...
- 5、Java并发性和多线程-相同线程
以下内容转自http://tutorials.jenkov.com/java-concurrency/same-threading.html(使用谷歌翻译): 相同线程(同一线程)是一种并发模型,其中 ...
- Java中DAO/DTO/PO/VO/BO/QO/POJO
ORM:是Object Relational Mapping(对象关系映射)的缩写. 通俗点讲,就是将对象与关系数据库绑定,用对象来表示关系数据.在O/R/M的世界里,有两个基本的也是重要的东东需要了 ...
- something interesting when read docs
When you kill a session with "ALTER SYSTEM KILL SESSION '' ". If the session is performin ...
- Office EXCEL如何批量把以文本形式存储的数字转换为数字
如果"以文本形式存储的数字"不多,则点击右边的感叹号,转换为数字即可.但是如果有几万个单元格就不能这样做了. 先把他旁边的一列填充为1(选中该列,然后按Ctrl+F查找,按列查 ...
- Python FAQ2:赋值、浅拷贝、深拷贝的区别?
在Python编程过程中,经常会遇到对象的拷贝,如果不理解浅拷贝和深拷贝的概念,你的代码就可能出现一些问题.所以,在这里按个人的理解谈谈它们之间的区别. 一.赋值(assignment) 在<P ...
- Python中range和xrange的异同之处
range 函数说明:range([start,] stop[, step]).依据start与stop指定的范围以及step设定的步长,生成一个序列. range演示样例: >> ...
- 模块化开发(二)--- seaJs入门学习
SeaJS是一个基于CMD模块定义规范实现一个模块系统加载器 [CMD规范](https://github.com/cmdjs/specification/blob/master/draft/mo ...
- Spring自我总结
1.InitializingBean Spring设置完一个bean的合作者后,会检查bean是否实现InitializingBean接口,实现的话会调用afterPropertiesSet(Init ...