首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

PHP常用函数总结

('键值', 数组, false); //新建mysql服务器连接,可理解为新建数据库连接 $mysql = mysqli_connect("ip", "用户名", "密码", "数据库", "端口(...默认为3306)"); //修改数据库连接的字符集 mysqli_set_charset($mysql, "utf8"); //对数据库进行sql操作 mysqli_query($mysql, sql...,组成数组并返回, //数组的数目也就是长度 //大于0,返回相对数值的数组,如1,返回的数组只有一个元素, 0也返回只有一个元素数组 //小于0,数组尾部开始,去除 (-x) 的绝对值个元素,返回...explode("分割符", 变量, 返回数组元素的数目); //把数组里的元素打乱随机排序 shuffle(); //截取保留结果集的第 n 条数据,其他删除,并返回 //n为0截取第一条,为...1截取第二条,以此类推,n为-1截取最后一条 mysqli_data_seek($xx, n); //将数组转为json格式 json_encode(); //将json格式转为数组对象 json_decode

3.8K20

php面试题(2)

mysql_fetch_row()把数据库的一列储存在一个以零为基数的数组,第一栏在数组的索引0,第二栏索引1,依此类推。...mysql_fetch_assoc()把数据库的一列储存在一个关联数组数组的索引就是字段名称,例如我的数据库查询送回 “first_name”、“last_name”、“email”三个字段,数组的索引便是...以下几个方面考虑: 数据库库和表都用utf8编码 php连接mysql,指定数据库编码为utf8 mysql_query(“set names utf8”); php文件指定头部编码为utf-8header...PHP用数字索引和STRING索引差别还是很大的 MYSQL主从服务器,如果主服务器是innodb引擎,服务器是myisam引擎,实际应用,会遇到什么问题?...TIME_WAIT状态的意义 TCP连接被动关闭连接的一方(图中client)发送的FIN报文到达,被动关闭连接的一方会发送ACK确认报文,并且进入TIME_WAIT状态,并且等待2MSL时间段

2.5K20
您找到你想要的搜索结果了吗?
是的
没有找到

2019-PHP面试题大全【PHP基础部分】

PHP的运行环境最优搭配为Apache+MySQL+PHP,此运行环境可以不同操作系统(例如windows、Linux等)上配置,不受操作系统的限制,所以叫跨平台 2、WEB开发数据提交方式有几种?...(2)数据表创建索引。 (3)对程序中经常用到的数据生成缓存(比如使用redis缓存数据,比如使用ob进行动态页面静态化等等)。 (4)对mysql做主从复制,读写分离。...PHPMYSQL数据库是最优搭配,当然PHP也可以去其它的数据库搭配使用,例如PostgreSql,SqlServer,Oracle,SqlLite等。...assoc该参数为TRUE,将返回array而非object; Json_encode:将PHP变量转换成json格式。 11、Print、echo、print_r有什么区别?...(12)array_walk() 使用用户自定义函数对数组的每个元素做回调处理 14、PHP处理字符串的常用函数?

1.8K20

2019PHP面试题大全【PHP基础部分】

PHP的运行环境最优搭配为Apache+MySQL+PHP,此运行环境可以不同操作系统(例如windows、Linux等)上配置,不受操作系统的限制,所以叫跨平台 2、WEB开发数据提交方式有几种?...7、程序的开发,如何提高程序的运行效率? (1)优化SQL语句,查询语句中尽量不使用select *,用哪个字段查哪个字段;少用子查询可用表连接代替;少用模糊查询。 (2)数据表创建索引。...PHPMYSQL数据库是最优搭配,当然PHP也可以去其它的数据库搭配使用,例如PostgreSql,SqlServer,Oracle,SqlLite等。...assoc该参数为TRUE,将返回array而非object; Json_encode:将PHP变量转换成json格式。 11、Print、echo、print_r有什么区别?...数组的最后一个单元(出栈) (12)array_walk() 使用用户自定义函数对数组的每个元素做回调处理 14、PHP处理字符串的常用函数?

5.1K40

PHP面试题集锦

assoc该参数为TRUE,将返回array而非object;Json_encode:将PHP变量转换成json格式。...缓存技术是将动态内容缓存到文件一定时间内访问动态页面直接调用缓存文件,而不必重新访问数据库。 error_reporting() 的作用? 设置 PHP 的报错级别并返回当前级别。...1 讲解:count(var)是用来统计数组或对象的元素个数的。var是null或者空数组,结果为0。如果var是普通变量,则返回1。正常情况下返回var元素或属性个数。...9、__clone() :克隆对象执行此函数。 10、__autoload() :实例化对象类不存在,执行此函数自动加载类。...,因为socket之间nginx和php-fpm的进程之间通信,而tcp需要经过本地回环驱动,还要申请临时端口和tcp相关资源,unix socket会显得不是那么稳定,并发连接数爆发,会产生大量的长缓存

6.9K20

PHP 高级工程面试题汇总

MYSQL的表设计上尽量冗余一部分字段,避免MYSQL里处理大量的逻辑运算。我们是做PHP服务开发的,mysql语句能简单尽量简单。逻辑运算的地方可以PHP里做。)...52、MYSQL主从服务器,如果主服务器是innodb引擎,服务器是myisam引擎,实际应用,会遇到什么问题? 不知道,没用过,为什么这么设计?故意给自己找不愉快?...,与 dynamic 相反,pm.start_servers 服务启动即启动 dynamic - 子进程的数量在下面配置的基础上动态设置:pm.max_children,pm.start_servers...原因:为了应对网络存在的延迟的重复数组的问题 例子: 假设client发起连接连接请求报文段在网络没有丢失,而是某个网络节点长时间滞留了,导致延迟到达server。...TIME_WAIT状态的意义 TCP连接被动关闭连接的一方(图中client)发送的FIN报文到达,被动关闭连接的一方会发送ACK确认报文,并且进入TIME_WAIT状态,并且等待2MSL时间段

1K20

Php面试问题_php面试常问面试题

另外一方面,如果每次执行代码是读取不同的文件,或者有通过一组文件迭代的循环,就使用include()语句 incluce在用到时加载 require一开始就加载 29、Linux系统怎么编译PHP...In_array:判断数组是否存在某个元素 array_reverse() 将数组元素倒叙,返回值为倒叙之后的数组。...array_splice(array1,start,length,array2) 数组移除相应的元素,并用新元素替换它 array_push() (进栈)向数组的尾部添加一个或多个元素, array_pop...() (出栈)数组删除最后一个元素 33、跨域请求有哪几种方式??...,然后返回结果,Memcache采用 LRU 算法来逐渐把过期的数据清除掉 39、mysql锁机制 40、数据库优化哪几个方面做??

1.4K10

2019PHP面试题大全【PHP基础部分】

PHP的运行环境最优搭配为Apache+MySQL+PHP,此运行环境可以不同操作系统(例如windows、Linux等)上配置,不受操作系统的限制,所以叫跨平台 2、WEB开发数据提交方式有几种?...7、程序的开发,如何提高程序的运行效率? (1)优化SQL语句,查询语句中尽量不使用select *,用哪个字段查哪个字段;少用子查询可用表连接代替;少用模糊查询。 (2)数据表创建索引。...PHPMYSQL数据库是最优搭配,当然PHP也可以去其它的数据库搭配使用,例如PostgreSql,SqlServer,Oracle,SqlLite等。...assoc该参数为TRUE,将返回array而非object; Json_encode:将PHP变量转换成json格式。 11、Print、echo、print_r有什么区别?...数组的最后一个单元(出栈) (12)array_walk() 使用用户自定义函数对数组的每个元素做回调处理 14、PHP处理字符串的常用函数?

3.9K30

PHP 高级工程面试题汇总「建议收藏」

MYSQL的表设计上尽量冗余一部分字段,避免MYSQL里处理大量的逻辑运算。我们是做PHP服务开发的,mysql语句能简单尽量简单。逻辑运算的地方可以PHP里做。)...52、MYSQL主从服务器,如果主服务器是innodb引擎,服务器是myisam引擎,实际应用,会遇到什么问题? 不知道,没用过,为什么这么设计?故意给自己找不愉快?...,与 dynamic 相反,pm.start_servers 服务启动即启动 dynamic - 子进程的数量在下面配置的基础上动态设置:pm.max_children,pm.start_servers...原因:为了应对网络存在的延迟的重复数组的问题 例子: 假设client发起连接连接请求报文段在网络没有丢失,而是某个网络节点长时间滞留了,导致延迟到达server。...TIME_WAIT状态的意义 TCP连接被动关闭连接的一方(图中client)发送的FIN报文到达,被动关闭连接的一方会发送ACK确认报文,并且进入TIME_WAIT状态,并且等待2MSL时间段

62030

最新PHP 面试、笔试题汇总(code happy)

(您可以向函数输入一个或者多个数组。) 注释:如果两个或更多个数组元素有相同的键名,则最后的元素会覆盖其他元素。...该函数与 array_merge_recursive() 函数之间的不同是处理两个或更多个数组元素有相同的键名的情况。...四十三、Composer自动加载原理 composer加载核心思想是通过composer的配置文件引用入口文件(autoload.php),将类和路径的对应关系加载到内存,最后将具体加载的实现注册到...4)、FastCGI子进程完成处理后将标准输出和错误信息同一连接返回Web Server。FastCGI子进程关闭连接,请求便告处理完成。...两数组相加 两个数组相加,若数组存在相同键值的元素,则只保留第一个数组元素 设置时区 date_default_timezone_set("Asia/Shanghai"); url中用get传值的时候

1K20

PHP5.2至5.6的新增功能详解

按照传统的风格,访问 MySQL 数据库应该是这样子: //连接到服务器,选择数据库 $conn = mysql_connect("localhost", "user", "password");...PDO 实现将会是这样: // 连接数据库 $conn = new PDO("mysql:host=localhost;dbname=database", "user", "password");...但如果你需要使用 MySQL 所特有的高级功能,那么你可能需要尝试一下MySQLi, 因为 PDO 为了能够同时多种数据库上使用,不会包含那些MySQL独有的功能。...但由于并没有事先把 $authorized 初始化为 false, register_globals 打开,可能访问 /auth.php?...细节修改 PHP5.4 新增了动态访问静态方法的方式: 新增实例化时访问类成员的特征: (new MyClass)->xxoo(); 新增支持对函数返回数组的成员访问解析(这种写法之前版本是会报错的

3.7K20

Mysql优化查询过程的数据访问

Mysql json类型 5.7.8开始,mysql开始支持json数据类型,json数据类型存储时会做格式检验,不满足json格式会报错,json数据类型默认值不允许为空。...顺序存储结构:用数据元素存储器的相对位置来表示数据元素之间的逻辑结构(关系)。...链式存储结构:每一个数据元素增加一个存放另一个元素地址的指针(pointer ),用该指针来表示数据元素之间的逻辑结构(关系) 19.PHP伪类型 伪类型:假类型,实际上PHP不存在的类型。...详述WebSocket原理 视频 | 一步步教你操作websocket通知案例 23.PHP数组结构及排序原理 PHP数组是由哈希表 + 双向链表实现 排序原理: 申请n个额外空间 遍历双链表 调用排序函数...zend\_qsort(内部是快速排序算法)对数组排序 调用排序函数zend\_qsort(内部是快速排序算法)对数组排序 排序后,双链表节点的位置发生变化,因而调整指定指向 遍历数组,分别设置每一个节点的

2.2K20

2020年10月笔记

PHP没有任何变量指向这个对象,这个对象就变为垃圾.PHP会将其在内存销毁,这是PHP的垃圾回收机制,防止内存溢出....他的思想是先对数组进行分割, 把大的元素数值放到一个临时数组里,把小的元素数值放到另一个临时数组里(这个分割的点可以是数组的任意一个元素值,一般用第一个元素,即$array[0]),然后继续把这两个临时数组重复上面拆分...,最后把小的数组元素和大的数组元素合并起来。...: 1.数据库的三范式: 一范式就是属性不可分割, 二范式就是要有主键,其他字段都依赖于主键, 三范式就是要消除传递依赖,消除冗余,就是各种信息只一个地方存储,不出现在多张表 2.数据库死锁 并发系统不同线程出现循环资源依赖...相邻的两个数据页利用率很低的时候会做数据页合并,合并的过程是分裂过程的逆过程。 17.性能和存储空间方面考量,自增主键往往是更合理的选择。 【今日收获】 1.

53130

十个 PHP 开发者最容易犯的错误

易犯错误 #1: foreach 循环后留下数组的引用 还不清楚 PHP foreach 遍历的工作原理?...如果你在想遍历数组操作数组每个元素 foreach 循环中使用引用会十分方便,例如 $arr = array(1, 2, 3, 4); foreach ($arr as &$value)... $value 通过赋值获得, foreach 按顺序复制每个 $array 的元素到 $value ,第二个 foreach 里面的细节是这样的 第一步:复制 $array[0] (也就是 1 )...考虑到这一点,让我们重新回顾一下以上例子两个关键行: // getValues() 返回了一个 $values 数组的拷贝 // 所以`test`元素被添加到了这个拷贝,而不是 $values 数组本身...这里面有历史的原因 --- 这两种内容类型是 PHP 的 $_POST实现前就已经使用了的两个重要的类型。

3K90

十个 PHP 开发者最容易犯的错误

易犯错误 #1: foreach 循环后留下数组的引用 还不清楚 PHP foreach 遍历的工作原理?...如果你在想遍历数组操作数组每个元素 foreach 循环中使用引用会十分方便,例如 $arr = array(1, 2, 3, 4); foreach ($arr as &$value)... $value 通过赋值获得, foreach 按顺序复制每个 $array 的元素到 $value ,第二个 foreach 里面的细节是这样的 第一步:复制 $array[0] (也就是 1 )...考虑到这一点,让我们重新回顾一下以上例子两个关键行: // getValues() 返回了一个 $values 数组的拷贝 // 所以`test`元素被添加到了这个拷贝,而不是 $values 数组本身...这里面有历史的原因 --- 这两种内容类型是 PHP 的 $_POST实现前就已经使用了的两个重要的类型。

2.6K50

PHP5各个版本的新功能和新特性总结

按照传统的风格,访问 MySQL 数据库应该是这样子: // 连接到服务器,选择数据库 $conn = mysql_connect("localhost", "user", "password"); mysql_select_db...上面的代码用 PDO 实现将会是这样: // 连接数据库 $conn = new PDO("mysql:host=localhost;dbname=database", "user", "password...但如果你需要使用 MySQL 所特有的高级功能,那么你可能需要尝试一下 MySQLi, 因为 PDO 为了能够同时多种数据库上使用,不会包含那些 MySQL 独有的功能。...JSON 系列函数,可以将 PHP 数组结构与 JSON 字符串进行转换: $array = ["key" => "value", "array" => [1, 2, 3, 4]]; $json =...新增支持对函数返回数组的成员访问解析(这种写法之前版本是会报错的): print func()[0]; PHP5.5(2013起) yield yield关键字用于函数需要返回一个迭代器的时候,

3.7K20

易犯错误 | 十个 PHP 开发者最容易犯的错误

易犯错误 #1: foreach循环后留下数组的引用 还不清楚 PHP foreach 遍历的工作原理?...如果你在想遍历数组操作数组每个元素 foreach 循环中使用引用会十分方便,例如 $arr = array(1, 2, 3, 4); foreach ($arr as &$value)...考虑到这一点,让我们重新回顾一下以上例子两个关键行: // getValues() 返回了一个 $values 数组的拷贝 // 所以`test`元素被添加到了这个拷贝,而不是 $values...这里面有历史的原因 --- 这两种内容类型是 PHP 的 _POST 实现前就已经使用了的两个重要的类型。...所以不管使用其他任何内容类型 (即使是那些现在很流行的,像 application/json), PHP 也不会自动加载到 POST 的有效内容。

4.4K20

2018年终总结

,与二叉搜索树类似,但是要么没有孩子,要么就有两个 2.3结点包含一小一大两个元素和三个孩子, 剑指offer 1.二维数组查找,左下角开始查找,要查找数字比左下角数字大。...:静态查找表和动态查找表 静态查找表:只查找操作的查找表,查询某元素是否查找表,查询某元素的属性等 动态查找表:查找过程同时插入查找表不存在的数据元素,或者删除已存在的元素 查找结构:专门为查找操作设置的数据结构...j1开始 2.j<i,就遍历链表,让p的指针向后移,不断指向下一结点,j累加1 3.若到链表末尾p为空,则说明第i个元素不存在 4.否则查找成功系统中生成空结点s 5.将数据元素e赋值给s->data...请求结束后,PHP不会释放到MySQL连接,以便下次重用,这个过程对程序是透明的. 这可以看作是PHP-FPM维护的"数据库连接池". 7.非但不能节约MySQL资源,反而会加剧数据库的负荷。....x 移植到 PHP 5.6.x不兼容 1.使用数组标识符为类定义数组类型的属性数组的键不会被覆盖,显式数组键和隐式数组键相同将不会覆盖. 2.严格的 json_decode(), JSON 字面量

2.5K20

PHP 快速入门

> 对象的克隆: 有时我们需要建立一个对象的副本,改变原来的对象不希望影响副本,此时可使用对象的克隆,即将原对象的所有信息内存复制一份,存储新开辟的内存中用于对象的拷贝,克隆后两个对象互不干扰....> 魔术方法Call: 程序试图调用不存在或不可见的成员方法,PHP会先调用call方法来存储方法名称及其参数,该函数包含两个参数,即方法名和方法参数,其中方法参数是以数组形式存在的. 魔术方法autoload: 该方法可以自动实例化需要使用的类,程序要用到一个类但没加载,该方法会在指定路径自动查找该类名称,如果找到程序继续执行,否则会报错。...> 开启事务提交: 使用事务提交需要让MySQL数据库切换到InnoDB上,然后执行事务,最后提交. PDO 连接MySQL数据库: PDO技术就是SQL语句中添加了一个中间层,所有的查询方式都可以通过中间层去调用,极大的提高了数据库操作的通用性,同时安全性也得到了更好的保障,以下是基本的语句使用

2.6K10

PHP 开发基础知识笔记

> 对象的克隆: 有时我们需要建立一个对象的副本,改变原来的对象不希望影响副本,此时可使用对象的克隆,即将原对象的所有信息内存复制一份,存储新开辟的内存中用于对象的拷贝,克隆后两个对象互不干扰....> 魔术方法Call: 程序试图调用不存在或不可见的成员方法,PHP会先调用call方法来存储方法名称及其参数,该函数包含两个参数,即方法名和方法参数,其中方法参数是以数组形式存在的. 魔术方法autoload: 该方法可以自动实例化需要使用的类,程序要用到一个类但没加载,该方法会在指定路径自动查找该类名称,如果找到程序继续执行,否则会报错。...> 开启事务提交: 使用事务提交需要让MySQL数据库切换到InnoDB上,然后执行事务,最后提交. PDO 连接MySQL数据库: PDO技术就是SQL语句中添加了一个中间层,所有的查询方式都可以通过中间层去调用,极大的提高了数据库操作的通用性,同时安全性也得到了更好的保障,以下是基本的语句使用

1.7K10
领券