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

php面试题目2020_php算法面试题及答案

设置PHP的报错级别并返回当前级别。 9、说说你对缓存技术的了解? 缓存技术是将动态内容缓存到文件中,在一定时间内访问动态页面直接调用缓存文件,而不必重新访问数据库。...ajax是异步传输技术,可以通过javascript实现,也可以通过JQuery框架实现,实现局部刷新,减轻了服务器的压力,也提高了用户体验。 12、在程序的开发中,如何提高程序的运行效率?...18、echo、print_r、print、var_dump区别 echo:语句结构; print:是函数,有返回值 print_r:能打印数组,对象 var_dump:能打印对象数组,并且带数据类型...要将有组语句作为事务考虑,就需要通过ACID测试,即原子性,一致性,隔离性和持久性。 27、什么是锁? 答:数据库是一个多用户使用的共享资源。...__construct() 实例化类时自动调用。 __destruct() 类对象使用结束时自动调用。 __set() 在给未定义的属性赋值的时候调用。

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

    AJAX 前端开发利器:实现网页动态更新的核心技术

    当服务器响应就绪时,myFunction() 函数会解析XML并构建一个包含CD信息的HTML表格,最终更新具有 "demo" ID 的元素。...q="+str str 变量保存输入字段的内容 PHP 文件 - "gethint.php" PHP文件检查一个包含名字的数组,并将相应的名字返回给浏览器: 在上述示例中,当用户在输入字段中输入字符时,通过AJAX与服务器通信,并从PHP文件中获取相应的建议。建议将在 "txtHint" 元素中显示。...将请求发送到服务器上的文件 注意,将一个参数(q)添加到 URL(带有下拉列表的内容) AJAX 服务器页面 - "getcustomer.php" 由上面的 JavaScript 调用的服务器上的页面是一个名为...> 在上述示例中,当用户选择一个客户时,通过AJAX与服务器通信,并从数据库中获取相应的客户信息。客户信息将以HTML表格的形式显示在具有 "txtHint" ID 的元素中。

    13400

    【译】现代化的PHP开发--PDO

    2.3、方式二,query fetch: 当运行诸如select语句之类的查询时,我们确实希望返回相应的结果。...PHP_EOL; } 注意 $dbh->query() 和$statement->fetch(),我们的类别命名就是通过PDO API的调用顺序来命名的。...这些标志参数包括如下: PDO::FETCH_ASSOC: 返回按列名索引的关联数组。 PDO::FETCH_NUM:返回数值索引数组。...其目的是使我们的代码在单独调用时更易于阅读,当调用此方法时,它将以php对象的形式返回下一个结果集: $statement = $dbh->query('SELECT id, name FROM customers...它不起作用,因为prepare语句只接受标量类型(例如string、int等)。 最终的任务是构建一个包含相同问号的,以逗号分隔的字符串(?)来绑定数组变量。这就是我们如何构建一个合法的子句串。

    2K00

    三日php之路 -- 第二,三天(php知识要点)

    ); // 在php5.4之后 可以使用 $arr = [1,2,3]; // 对于数组的遍历 $arr_len = count($arr); // 需要注意数组的下标!!!...// 当使用 require ,找不到文件时,require语句会返回严重错误,脚本停止执行。 (4)文件 php拥有多个函数可以创建,读取,上传和编辑文件。...cookie是服务器留在用户计算机上的小文件。每当相同的计算机通过浏览器请求页面时,它同时会发送cookie。 // 创建cookie, 使用 setcookie()。...四个参数:数据源名称,用户名,密码,可选的指针类型参数 odbc_exec() //函数用于执行SQL语句 odbc_fetch_row() //从结果集中返回记录 odbc_close() // 关闭...AJAX 吧 ... ... // AJAX只是提供异步的请求,服务器端的数据处理基本没什么变化 ... ... ---- 七、其他 PHP基本内容算是差不多了吧。

    1.4K10

    Yii使用技巧大汇总

    limit的查询选项,那么他将单独执行,然后再执行与关联表有关的语句,返回相关表的数据对象,这就是为什么在做大优惠时,以中间表为查询条件出错的原因, 解决办法 with()返回 CActiveFinder...文件,返回数组,即能用于widget的初始配置 4:在php文件中,如果有defautl的配置,会先找这个skin 5:如果应用了theme,程序会先去对应的theme目录下的skins中找配置文件 6...accessController是CContronller内置的filter,其调用 accessRules,得到验证规定,所以也要重写对应的accessRules,返回一个验证规则的数组成部分 if.....behavior.Window') 一对多,多对多的关联时最后的参数 together说明 如果为false,分开查多个语句 如果为true,强制生成一个语句 如果没有设置,分页页生成多个语句...,不分页时生成一个语句 ), 多对多时,查询时,中间表的名子叫 (关联名_关联名) with选项的作用是eager loading together的作用是 要不要形成一个语句 当是一个sql语句是记录会有重复

    2.4K31

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

    上面代码的问题在于没有搞清楚通过引用与通过值返回数组的区别。除非你明确告诉 PHP 通过引用返回一个数组(例如,使用 &),否则 PHP 默认将会「通过值」返回这个数组。...这意味着这个数组的一份拷贝将会被返回,因此被调函数与调用者所访问的数组并不是同样的数组实例。 所以上面对 getValues() 的调用将会返回 $values 数组的一份拷贝,而不是对它的引用。...echo $config->getValues()['test']; 一个可能的修改方法是存储第一次通过 getValues() 返回的 $values 数组拷贝,然后后续操作都在那份拷贝上进行;例如:...因此,理解这些默认的行为(例如,变量和数组以值传递;对象以引用传递)并且仔细查看你将要调用的函数 API 文档,看看它是返回一个值,数组的拷贝,数组的引用或是对象的引用是必要的。...当一个名字包含 『Schrödinger』的人注册到你的系统时,即使简单的 strlen($_POST['name']) 调用也会出现问题。

    3K90

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

    上面代码的问题在于没有搞清楚通过引用与通过值返回数组的区别。除非你明确告诉 PHP 通过引用返回一个数组(例如,使用 &),否则 PHP 默认将会「通过值」返回这个数组。...这意味着这个数组的一份拷贝将会被返回,因此被调函数与调用者所访问的数组并不是同样的数组实例。 所以上面对 getValues() 的调用将会返回 $values 数组的一份拷贝,而不是对它的引用。...echo $config->getValues()['test']; 一个可能的修改方法是存储第一次通过 getValues() 返回的 $values 数组拷贝,然后后续操作都在那份拷贝上进行;例如...当一个名字包含 『Schrödinger』的人注册到你的系统时,即使简单的 strlen($_POST['name']) 调用也会出现问题。...比如,在 Zend Framework 2 下的 Zend\Db\TableGateway 的 TableGateway::select() 结果中调用 current() 时返回数据的方式,正如文档所表明的那样

    4.5K20

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

    上面代码的问题在于没有搞清楚通过引用与通过值返回数组的区别。除非你明确告诉 PHP 通过引用返回一个数组(例如,使用 &),否则 PHP 默认将会「通过值」返回这个数组。...这意味着这个数组的一份拷贝将会被返回,因此被调函数与调用者所访问的数组并不是同样的数组实例。 所以上面对 getValues() 的调用将会返回 $values 数组的一份拷贝,而不是对它的引用。...echo $config->getValues()['test']; 一个可能的修改方法是存储第一次通过 getValues() 返回的 $values 数组拷贝,然后后续操作都在那份拷贝上进行;例如:...因此,理解这些默认的行为(例如,变量和数组以值传递;对象以引用传递)并且仔细查看你将要调用的函数 API 文档,看看它是返回一个值,数组的拷贝,数组的引用或是对象的引用是必要的。...当一个名字包含 『Schrödinger』的人注册到你的系统时,即使简单的 strlen($_POST['name']) 调用也会出现问题。

    2.6K50

    令PHP初学者的困惑的10个知识点

    当 php.ini 中的 register_globals 被设置为 on 时,$myfile_name 等价于 $_FILES ['myfile']['name'],$myfile_type 等价于...【3】显示错误信息 当php.ini的display_errors = On并且error_reporting = E_ALL时,将显示所有的错误 和提示,调试的时候最好打开以便纠错,如果你用以前php...变量在赋值以前调用会有提 示,解决办法是探测或者屏蔽,例如显 示$foo,可以if(isset($foo)) echo $foo 或者echo @$foo 【4】header already sent...【5】更改php.ini后没有变化 重新启动web server,比如IIS,Apache等等,然后才会应用最新的设置。 【6】有时候sql语句不起作用,对数据库操作失败。...【10】通过HTTP协议一次上传多个文件的方法 有两个思路,是同一个方法的两种实现。具体程序还需自己去设计 1.

    82350

    面试小知识

    答: ajax是异步传输技术,可以通过JavaScript实现,也可以通过Jquery实现,实现页面的局部刷新,减轻服务器的压力。 现在编程中常用MVC三层结构,请问三层结构指什么?有什么优点?...assoc当该参数为TRUE时,将返回array而非object;    json_encode:将PHP变量转换成json格式 print_r、print、echo三种输出方式的区别?...echo 和 print 都可以做输出,两者不同的是 echo 不是函数,没有返回值,print是函数有返回值; 所以相对而言如果只是输出,使用echo更好,echo会更快,而print_r通常用于打印变量的相关信息...(入栈) 4 array_column() 返回输入数组中某个单一列的值 5 array_combine() 通过合并两个数组来创建一个新数组 6 array_reverse(...) 以相反的顺序返回数组 7 array_unique() 删除数组中的重复值 8 in_array() 检查数组中是否存在指定的值 PHP处理字符串的常用函数说一说

    2.7K20

    【Wordpress】ajax 实现站内搜索

    比如调用最新文章、热门文章、自定义文章类型文章循环输出等。 在官方手册中也有介绍到:wp_query,支持多种 sql 语句的 比较符号: ? 看!...$result->the_post(); //获取到特定的文章         // 要输出的内容,如标题、日期等     endwhile;endif; 但是很遗憾,不知道是我的姿势不对,就是不起作用...问题2 – 接口对接: 上面我们已经实现了文章的模糊匹配,接下来就要提供一个接口,来实现与前端的交互。所以,我们将会用到 wordpress 自带的 admin-ajax.php 文件。...实现原理: 要使用 admin-ajax.php 请求必然首先就是遇到如何使用 wordrpess 的钩子 hook 来做过滤。...', 'search' );add_action( 'wp_ajax_search', 'search' ); 调用方式: 示例:https://zhaoshuai.me/wp-admin/admin-ajax.php

    1.3K10

    php 接口与前端数据交互实现示例代码

    php //测试php是否可以拿到数据库中的数据 /echo "44444";/ //做个路由 action为url中的参数 $action = $_GET['action']; switch($action.../ 用户名 / 密码 / 数据库名称 2、返回一个包含参数列表的数组 3、遍历$sqls这个数组,并把返回的值赋值给 $s 4、执行一条mysql的查询语句 5、关闭数据库 6、返回执行后的数据 */...,究其原因是因为对SQL语句不熟悉,对php不熟悉,不过,了以下几点,供参考: 1.delete 返回的参数只能用 $_GET 获取; 2.delete 返回的参数要放在URL中,不能放在body中;body...中的参数是用来查询的; 3.SQL语句一定要熟练,一步错,步步错; 4.要在数据库中执行SQL语句检查语句是否执行正确,要使用 Rest Client 测试URL请求是否正确; php: <?...; } }); }); }) } 调试方法: 数据交互实现3:新增 在写php的方法上,我觉得我的方法是有问题的,因为所有的参数,也就是所有的需要新增的数据都是通过 接口以 ?

    2K20

    ThinkPHP反序列化链构造

    反序列化常用跳板 __toString 当一个对象被当做字符串使用 __get 读取不可访问或不存在属性时被调用 __set 当给不可访问或不存在属性赋值时被调用 __isset 对不可访问或不存在的属性调用...isset()或empty()时被调用 反序列化常见终点 __call 调用不可访问或不存在的方法时被调用 call_user_func 任意代码执行点 call_user_func_array 任意代码执行点...在476行去调用了getData方法,接着跟进getData方法 通过上面的分析我们可以知道name不能为空,所以只能去执行第一个elseif的语句,this->data可控name为其键值。...此时我们发现我们没有办法去利用visible方法,所以我们要利用到call方法,当调用一个不可访问 的方法(如未定义,或者不可见时), __call()就会被调用,所以我们就要找一个包含call方法,但不存...新数组的值将被插入到数组的开头,这样一来就造成了call_user_function_array没办法顺利的执行任意命令,但是可以调用任意方法。

    90931

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

    ajax是异步传输技术,可以通过javascript实现,也可以通过JQuery框架实现,实现局部刷新,减轻了服务器的压力,也提高了用户体验。...7、在程序的开发中,如何提高程序的运行效率? (1)优化SQL语句,查询语句中尽量不使用select *,用哪个字段查哪个字段;少用子查询可用表连接代替;少用模糊查询。...assoc当该参数为TRUE时,将返回array而非object; Json_encode:将PHP变量转换成json格式。 11、Print、echo、print_r有什么区别?...(1) echo和print都可以做输出,不同的是,echo不是函数,没有返回值,而print是一个函数有返回值,所以相对而言如果只是输出echo会更快,而print_r通常用于打印变量的相关信息,通常在调试中使用...(重点看函数的‘参数’和‘返回值’) (1)array() 创建数组 (2)in_array() 判断元素是否在数组中 (3)count() 返回数组中元素的数目

    1.9K20

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

    ajax是异步传输技术,可以通过javascript实现,也可以通过JQuery框架实现,实现局部刷新,减轻了服务器的压力,也提高了用户体验。...7、在程序的开发中,如何提高程序的运行效率? (1)优化SQL语句,查询语句中尽量不使用select *,用哪个字段查哪个字段;少用子查询可用表连接代替;少用模糊查询。 (2)数据表中创建索引。...assoc当该参数为TRUE时,将返回array而非object; Json_encode:将PHP变量转换成json格式。 11、Print、echo、print_r有什么区别?...(1) echo和print都可以做输出,不同的是,echo不是函数,没有返回值,而print是一个函数有返回值,所以相对而言如果只是输出echo会更快,而print_r通常用于打印变量的相关信息,通常在调试中使用...(重点看函数的‘参数’和‘返回值’) (1)array() 创建数组 (2)in_array() 判断元素是否在数组中 (3)count() 返回数组中元素的数目 (4)array_merge() 将多个数组合并成一个数组

    5.1K40

    PHP代码审计笔记

    0 但是仅限于两者数据类型相同 如果s1是一个int型 s2是个string型就无法比较 返回的永远是0 extract() 函数从数组中将变量导入到当前的符号表。...rand() 在linux下,PHP的rand函数是调用glibc库中的rand函数,其实现是有缺陷的。...如果subject是一个数组, preg_replace()返回一个数组,其他情况下返回一个字符串。 webshell代码 php>=5.5.4) 经过 serialize() 函数反序列处理的数组 当 session.auto_start=On 时: 因为该过程是发生在脚本代码执行前,所以在脚本中设定的包括序列化处理器在内的...session 相关配选项的设置是不起作用的 session.upload_progress.enabled打开时,php会记录上传文件的进度,在上传时会将其信息保存在$_SESSION中。

    1.2K40

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

    ajax是异步传输技术,可以通过javascript实现,也可以通过JQuery框架实现,实现局部刷新,减轻了服务器的压力,也提高了用户体验。...7、在程序的开发中,如何提高程序的运行效率? (1)优化SQL语句,查询语句中尽量不使用select *,用哪个字段查哪个字段;少用子查询可用表连接代替;少用模糊查询。 (2)数据表中创建索引。...assoc当该参数为TRUE时,将返回array而非object; Json_encode:将PHP变量转换成json格式。 11、Print、echo、print_r有什么区别?...(1) echo和print都可以做输出,不同的是,echo不是函数,没有返回值,而print是一个函数有返回值,所以相对而言如果只是输出echo会更快,而print_r通常用于打印变量的相关信息,通常在调试中使用...(重点看函数的‘参数’和‘返回值’) (1)array() 创建数组 (2)in_array() 判断元素是否在数组中 (3)count() 返回数组中元素的数目 (4)array_merge() 将多个数组合并成一个数组

    3.9K30
    领券