php基础阶段内容

一、 php 基本概念,常规语法

1.什么是php?

Hypertext Preprocessor,超文本预处理器,它是个被广泛运用在网页程式撰写的语言,尤其是它能适用于网页程式的开发及能够嵌入HTML文件之中;

PHP的目的是为了能使网站开发者可以快速地撰写动态网页

(php是一种用来制作动态网页的服务器端脚本语言)

  1. php的注释方式

    多行注释:/* */

    单行注释:// 、#

  2. php现在的最新版本

    最新版本5.6

  3. wamp是什么?

    Apache+Mysql+PHP

    一组常用来搭建动态网站或者服务器的开源软件

  4. php的数据类型

    布尔型(bool)、整型(integer)、浮点型(float)、资源类型(resourse)、

    字符串类型(string)、数组类型(array)、对象(object)、空值(null)

  5. php中字符串的单引号和双引号的区别

    使用双引号和单引号的主要区别是:单引号定义的字符串中出现的变量和转义序列不会被变量的值替代, php中单引号内的变量不能被解释 ,而双引号中使用的变量名在显示时会显示变量的值

  6. php的随机数函数?不带参数和带参数有什么区别?

    rand :产生一个随机整数,不带参数时默认范围(在0---32767之间);

    带参数的话rand(最小值,最大值)

  7. 怎么定义常量?

    define("常量名","常量值");值只能是标量,数据类型只能是boolean、integer、float或string;不需要加“$”

  8. 怎么输出内容到页面显示?

    使用echo或者print函数;

    10.echo、print_r、var_dump区别?

    var_dump可以使用任何变量,包括字符串,数组,数字,对象,还指明变量的类型及长度。

    print_r()中,如果给出的是string,integer,folat,将打印变量值本身。如果给出的是array,将会按一定格式显示键和元素。Object与数组类似。

    二、php基础函数(数组、日期、字符串)

    1.怎么定义一个数组?

    $arr =array();

  1. 怎么给数组新增加1个值?

    array_unshift();

  2. foreach语法结构?

    foreach仅用于数组和对象

  3. 删除数组中的指定元素 array_splice()

  4. 数组的排序 sort()和rsort()   按键值排序sort()从小到大,rsort()从大到小

  5. array_unique() 去除数组中的相同元素

  6. in_array()检测一个值是否在数组中(返回true和false)

  7. array_search()返回的是键或值,返回的是键值所对应的键名

  8. array_pop() - 删除数组中的最后一个元素

    10.array_push() 数组尾部添加一个或多个元素(入栈),返回新长度。

    11.array_search()- 按元素值返回键名

  1. 怎么获取当前的日期时间?

    date_default_timezone_get ()

    gettimeofday ()

  2. 怎么格式化显示当前的日期时间?

    gmdate ()或者

    $today  =  date ( "Y-m-d H:i:s" );                    // 20161-06-08 17:16:18 (MySQL DATETIME 格式)

  3. 系统默认的是哪个地区的时间?

格林威治时间(GMT) (1901 年 12 月 13 日 20:45:54 到 2038 年 1 月 19 日 03:14:07)

15.怎么修改系统的默认时区?

date_default_timezone_set(" PRC");中国时区

  1. 获取字符串的长度?

    strlen ()

  2. 将字符串全部转换为小写或大写?

    字符串全部转换为小写    strtolower();

    字符串全部转换为大写    strtoupper()。

    18.查找字符在字符串中第一次或最后一次出现的位置?

    字符在字符串中第一次出现的位置     strpos();

    字符在字符串中最后一次出现的位置   strripos ()【不区分大小写】;

    trrpos ()【区分大小写】 。

    三、web开发(http协议)

    1.http的中文名称?现在的最新版本是多少?访问时的默认端口号?

    超文本传输协议;  ;3306。

  1. http协议的特点?

    HTTP遵循请求/响应模式;HTTP协议是一种无状态的协议。

  2. http的信息处理流程?

    客户端发送HTTP请求,web服务器接收到请求后关闭连接,web服务器处理请求生成对应的html或者web应用程序后与客户端建立连接,生成HTTP响应回发;

  3. 请求信息分为几个部分

    请求行,请求头,空行,消息体

  4. 请求方式共计有几种?我们常用的是哪2中请求方式?

    共计有8种(GET,HEAD,POST,PUT,DELETE,TRACE,CONNECT,OPTIONS);get和post。

  5. 请求行中包含哪些信息内容?

    请求方法、URI、HTTP版本,最后以回车换行结尾,各个元素之间用空格字符隔开。

  6. 响应信息分为几个部分?

    状态行,响应头,空行,消息体

  7. 状态码分几类?分别代表啥意思?列举常见的状态码及其含义?

    5类。

    1XX  信息

    2XX  成功    200:服务器成功返回网页

    3XX  重定向   302:临时移动

    4XX  请求错误  404:请求的网页不存在

    5XX  服务端错误  502:错误网关    503:服务器超时

    9.EGPCS指代的是什么?

    指的是可以从服务器配置和请求的信息中获取的信息,它包括了environment、GET、POST、cookie、server

    10.怎么获取访问用户的IP地址?

    getenv(“HTTP_ X_FORWARDED_FOR”);

  1. 请求中的Get和Post区别?

    get是从服务器上获取信息,post是向服务器传送数据,现在都是提交

  2. 怎么解决http无状态的问题?

    创建  表单隐藏字;   Cookie;    Session;   URL重写;

  3. 什么是cookie?

    Cookie基本上就是一个包含多个字段的字符串。一台服务器可以在响应头部发送一个或多个cookie到浏览器。一些cookie的字段指明哪些浏览器页面可以在请求中发送

  4. 什么是session?

    Session 是存储在服务器端的会话,相对安全

  5. cookie和session的区别?

    cookie数据存放在客户的浏览器上,session数据放在服务器上;

    Cookie不是很安全,别人可以分析存放在本地的cookie并进行cookie欺骗(考虑到安全应当使用session);

    Session会在一定时间内保存在服务器上。当访问增多时,会比较占用你服务器的性能(考虑到减轻服务器性能方面,应当使用Cookie);

    单个cookie保存的数据不能超过4k,很多浏览器都限制一个站点最多保存20个cookie;

    综上所述

    将登录信息等重要信息保存到session中,

    其他信息需要保留,可放在cookie中。

  6. 怎么创建设置cookie信息?

    使用cookie前必须设置cookie.
        int setcookie(string  name, string  value, int   expire,

    string  path, string  domain, int  secure)

  7. 怎么使用session?

    <?php

    //  启动Session

    session_start();

    // 声明一个名为 admin 的变量,并赋空值。

    $_SESSION["admin"] = null;

    $_SESSION[“count"] = $_SESSION[“count"]+1;

    echo “这里已经有 $_SESSION[“count"] 人浏览过了”;

    ?>

  8. session的常见函数有哪些?各有什么用处?

    ession_start();    //初始化session.需在文件头部

    $_SESSION[name]=value; //配置Seeeion

    echo $_SESSION[name]; //使用session

    isset($_SESSION[name]); // 判断

    unset($_SESSION[name]); //删除

    session_destroy(); //删除所有session,但是写入cookie的信息无法自动去掉

    四、ajax

    1.ajax的中文名称?

    异步JavaScript和XML

  1. ajax中包含哪些技术?

    7项技术,其中Javascript、XMLHttpRequest、Dom、XML是最为重要

  2. ajax对象有哪些常用函数,及其功能?

    Abort():停止当前请求;

    getAllResponseHeaders():作为字符串返回完整的headers;

    getResponseheader(“hederLabel”):作为字符串返回单个的header标签;

    Open(“method”,“URL”[,asyncFlag[,”userName”[,”password”]]]):设置未决的请求的目标URL方法和其他参数;

    Send(content):发送请求;

    setRequestHeader(“label”,”value”):设置header并和请求一起发送;

  3. ajax对象的常用属性有哪些?

    Onreadystatechange:状态改变的事件触发器

    readyState:对象状态(integer):0=未初始化,1=读取中,2=已读取,3=交互中,4=完成

    responseText:服务器进程返回数据的文本

    responseXML:服务器进程返回数据的兼容DOM的XML文档对象

    Status:服务器返回的状态码,如404=“文件未找到”、200=“成功”

    statusText:服务器返回的状态文本信息

    6.jquery的ajax函数格式及其常用参数、写法?

    $.ajax({

    type: "POST",   //请求方式

    url: "jqajax1.php",    //请求的地址

    data: "username="+$("input[type='text']").val(),  //请求的参数字符串

    dataType: "json",   //设置返回的数据类型,默认值为"text"

    success: function(msg){//接收成功返回的数据结果

    $("#div1").html( "接收的返回值: " + msg );

    },

    error: function(msg){

    $("#div1").html( "有错误了: " + msg );

    }

    });

    五、php+mysql(mysql函数)

    1.php操作mysql数据库的步骤?

    mysql_connect()         建立数据库连接

    mysql_select_db()       选择操作的数据库

    mysql_query()             执行SQL语句

    mysql_fetch_array()     返回一行记录(数组)

    mysql_num_rows()      返回结果集中行的数目

    mysql_close()              关闭数据库

  1. 创建数据库连接的函数?参数有几个?每个参数代表什么含义?

    mysql_connect() 建立数据库连接

    参数共计5个:

    第一个参数:服务器名称或者地址,同时可以加上端口号(如果是默认的3306,则可以省略);

    第二个参数:登录的用户名;

    第三个参数:登录密码;

    第四个参数:是否使用可能重名的相同连接对象(如果该对象已经创建),默认为false;

    第五个参数:常量组合,设置连接的模式,默认值为0;

    (连接成功,返回结果为资源类型;如果失败,报错并且返回false)

  2. 怎么选择要操作的数据库名称?

    mysql_select_db(“数据库名称”)       选择操作的数据库

  3. 执行sql语句的函数?该函数返回值是什么类型?

    mysql_query() ;仅对select,show,describe或explain等语句如果成功就返回资源类型;

    对于update,delete,drop,insert等语句,成功返回true,失败返回false。

  4. 怎么获取查询结果集的数量?

    Mysql_result(),

    mysql_fetch_row(),

    mysql_fetch_array()

  5. 怎么提取结果集中的数据?提取出来的数据是什么样的格式?

    mysql_fetch_array();

    MYSQL_ASSOC():返回的数组将以该记录的字段名称作为下标

    MYSQL_NUM():返回的数组以从0开始的数字为下标

    MYSQL_BOTH:返回的数组既可以用字段名为下标,也可以用数字为下标

  6. 怎么关闭数据库连接?

    mysql_close();

    六、其他

    1.empty()

    empty()函数检查一个变量是否为空或零值,如果变量值是非空或非零值,则empty()返回FALSE,否则返回TRUE

  1. isset()

    isset()函数来检查变量是否存在

  2. gettype()

    gettype()获取变量的类型

  3. settype()

    一种强制转换类型的函数方法

    语法格式:bool settype(mixed $var, string $type)

    例如:$var="123hello"; //$var为字符串

    settype($var, "int"); //$var现在为整型(值为123)

  4. 错误控制运算符 @

    将其放置在PHP表达式之前,该表达式可能产生的任何错误信息都将被忽略

  5. 执行运算符 `

    PHP支持一个执行运算符,即反引号(``)

    在PHP脚本中,将外部程序的命令行放入反引号中,并使用echo()或print()函数将其显示,PHP将会在到达该行代码时启动这个外部程序,并将其输出信息返回,其作用效果与shell_exec()函数相同

    反引号运算符在激活了安全模式或者关闭了 shell_exec() 时是无效的。

    与其它某些语言不同,反引号不能在双引号字符串中使用。

  6. 字符串拼接 .

    使用“.”

  7. 定界符 <<<+名称

    “<<<”之后提供一个标志符,然后是字符串,最后用同样的标志符结束字符串。结束标志符必须从行的第一列开始,标志符必须遵循PHP中标记的命名规则:只能包含字母、数字、下划线,而且必须以下划线或非数字字符开始

  8. unset()函数释放一个变量

初级php基础知识问答题(答案仅供参考)相关推荐

  1. 操作系统P,V(wait,signal原语)操作讲解,以及两个例题(答案仅供参考)

    操作系统的pv操作是很核心的概念. 临界区 : 我们把并发进程中与共享变量有关的程序段称为临界区. 信号量 : 信号量的值与相应资源的使用情况有关.当它的值大于0时,表示当前可用资源的数量:当它的值小 ...

  2. ITAT 第九届 模拟题 C语言程序设计 参考答案(个人答案 仅供参考)

    第九届全国信息技术应用水平大赛模拟题 C语言程序设计 注:模拟题题量总计88道,其中单选题60道,每道题1分:多选题20道,每道题2分:程序填充题6道,每道题5分:编程操作题2 道,每道题10分.试卷 ...

  3. JavaScript基础知识问答题(答案仅供参考)

     php高中班javascript答辩题目 什么是javascript? 答:Javascript是一种专门设计用来增强网页交互性的脚本语言,它也是一种解释型语言. Javascript与C语言的 ...

  4. 百战程序员试题与答案(仅供参考)

    JAVA基础篇 1.你学习编程的目的是什么?学习编程最快的办法是什么? 答案:我觉得多敲代码,多思考学的能快一点 2.程序员的职业规划是什么?我怎么能拿到10万年薪,30万年薪,50万年薪? 答案:努 ...

  5. 程序员的知识问题,仅供参考

    互怼提问 – 架构优化   1. 主从复制的原理是什么?主从复制中断了怎么办?主从复制出现延迟怎么处理?主库崩溃了怎么办?Mha 原理: 原理:主从复制一共有三个进程,从库生成两个线程,一个I/O线程 ...

  6. 【Java应用程序开发】【期末复习题】【2022秋】【答案仅供参考】

    文章目录 零.考试说明 一.单选题(175-2-2题,1') 二.多选题(16题,2') 三.判断题(20题,1') 四.简答题(18题,5') 五.编程题(9题,10') 零.考试说明 答题时长:9 ...

  7. 2022年,英文科技论文写作与学术报告期末考试答案(仅供参考)

  8. 2022年秋,工程伦理期末考试答案(仅供参考)

  9. Spark 练习测试题(答案仅供参考)

    选择题 1. spark 的四大组件下面哪个不是   (D) A.Spark Streaming      B MLlib      C Graph X    D Spark R 2. Hadoop框 ...

最新文章

  1. Ubuntu 安装docker CE以及harbor
  2. WIN7下的VS2008在调试OpenCV_2.3.1的程序时报错丢失tbb_debug.dll的解决办法~
  3. MySQL / B + 树算法在 mysql 中能存多少行数据?
  4. log4j配置目标到mongodb
  5. mybatis动态sql中的where标签的使用
  6. UVA - 815 Flooded!
  7. Android FrameWork浅识
  8. android x86显卡驱动,全系列显卡精简版纯驱动(Windows_6.x_VGA_Drivers_lite_x86x64)(2016.09.12)...
  9. 【统计学】皮尔森相关系数公式理解
  10. 电感滤波电路的工作原理
  11. 什么是opt文件,plg,ncb等
  12. 冯诺依曼体系结构(现代计算机的原型)+cpu的两个核心指标
  13. 上海“富爸爸” 神奇投资之路
  14. 什么是真正的蒸汽朋克?
  15. node版本、npm版本随意切换
  16. 二维特征分类的基础_纹理特征1:灰度共生矩阵(GLCM)
  17. AES加密:PHP与Java互通问题
  18. CStdioFile
  19. 画个板子玩玩最便宜的Arduino,Atmega8A 的使用
  20. 软件性能测试重要性,软件性能测试的重要性及策略-2

热门文章

  1. 通过js 快捷给元素设置多个css属性 -- cssText
  2. Attention-based model
  3. [离散事件模拟] 银行窗口模拟 - C语言
  4. html escape函数,Javascript escape() 函数和unescape() 函数
  5. fastdfs java集群连接_FastDFS集群部署
  6. 【笔记】:Python实现Matlab中sub2ind函数的功能
  7. checkra1n越狱工具下载地址
  8. iOS 开发资源 - 收藏集 - 掘金
  9. 求垂足坐标(计算几何)
  10. java记事本实验总结_第十四周课程总结实验报告(简单记事本的实现)