PHP04
PHP04
1、HTTP(hypertext transfer protocol)
1)HTTP是端与端之间的通讯协议
chrome://net-internals/
可查看DNS缓存
浏览器-检查-Network-all-header-Request headers view source
以查看请求报文包 头
Response header view source
返回响应报文包头
2)HTTP
https的固定端口为443
响应状态:
200 OK 服务器成功处理了请求
301 重定向,请求的URL已移走
304未修改,客户的缓存资源是最新的,要客户端使用缓存
403禁止,请求被服务器拒绝了
404未找到资源
500内部服务器错误,服务器遇到一个错误,使其无法为请求提供服务
3)报文
①请求报文
在输入地址敲回车后,浏览器自动封装了请求报文
②响应报文
服务端返回给客户端的文件,一般默认为html格式,也可以是js或css等,需要修改响应头的格式。
PHP中的heade函数专门用于设置响应头的内容:
在php中设置css文件类型,使其在被html引用后返回css的作用
<?php
header('Content-Type:text/css');
?>
body{
background-color: pink;
}
返回的文件的字符编码形式应该和响应头内声明的一样。也可以设置:
案例:网站重定向
不要循环重定向,参数内不能有空格。
当浏览器无法解析某一文件名时,将直接下载
3、数据表述手段
1)JSON不是字面量
字面量是数据的一种表述手段
JSON是一种类似于js的字面量的手段
2)JSON
JSON是一种通过普通字符串描述数据的手段,用于表示有结构的数据
数据类型有:null,string,number ,boolean,object,array
JSON中属性名称必须用双引号引起来,
比如:“name”:’‘cc’’
JSON中字符串也必须用双引号包起来
JSON中不允许出现注释
JSON中没有undefined这个值
JSON也有很多函数可供调用
JSON字符串是一系列由[]包起来的对象,如
[
{"name":"cc","age":18},
{"name":"aa","age":15},
{"name":"ww","age":38},
{"name":"yc","age":11},
{"name":"bc","age":14},
]
JSON.parse(JSON字符串);将相应的JSON转换为数组。
JSON.stringify(数组);将相应的数组转换为字符串。
json_decode(JSON字符串);解码(反序列化)JSON字符串,默认返回对象数组stdClass,若有第二个参数为true,返回数组数组
json_encode(数组);编码数组
案例:音乐列表
在php中,对于对象数组(在浏览器中输出,内部出现Object字样),要用
对象数组名->属性名
进行访问
而对于数组数组(在浏览器中输出,内部出现Array字样),要用
对象数组名[‘属性’]
进行访问
uniqid();方法,生成一个独一无二的id
form标签属性:autocomplete=“off”,取消记忆填充
文件域有一个accept属性,可限制上传文件类型,值是MIME TYPE.如img/* ,通配所有事图片的文件格式
判断文件大小:
in_array(数组名,元素)
返回布尔值,判断元素是否存在于数组中
PHP04的更多相关文章
- PHP04 HTTP协议入门(转)
HTTP 协议是互联网的基础协议,也是网页开发的必备知识,最新版本 HTTP/2 更是让它成为技术热点. 本文介绍 HTTP 协议的历史演变和设计思路. 一.HTTP/0.9 HTTP 是基于 TCP ...
- PHP细节,empty,is_null,isset,if()
以下内容转载自http://wuxinjie.github.io/php-04/ 从下表可知,empty与if()完全相反,is_null与isset完全相反 isset是语句,is_null是函数, ...
- sudo实例--企业生产环境用户权限集中管理方案实例
根据角色的不同,给不同的用户分配不同的角色1.创建初级工程师3个,网络工程师1个,中级工程师1个,经理1个 # 批量创建用户 for user in chuji{01..03} net01 ...
- Linux 基础学习大考核
0.关于Linux的简介 Linux(好又免费)的组成部分: Linux 是一种计算机操作系统: 一系列能让您与计算机进行交互操作并运行其它程序的程序. 操作系统由多种基础程序构成.它们使计算机可以与 ...
随机推荐
- alpha冲刺4/10
目录 摘要 团队部分 个人部分 摘要 队名:小白吃 组长博客:hjj 作业博客:冲刺4 团队部分 后敬甲 过去两天完成了哪些任务 文字描述 主页部分图标的替换 -拍照按钮的设计和测试 GitHub代码 ...
- java的局部变量和成员变量以及区别
一.局部变量 存在某个方法中的变量就叫局部变量,局部变量一旦声明就必须赋值 否则不能使用 代码如下: class Person { String name; char sex; int age; pu ...
- 基于AspNet Core2.0 开发框架,包含简单的个人博客Demo
大家好,最近离职了,利用闲暇时间就捣鼓了一个基于AspNet Core开发框架,分享出来希望能给AspNet Core学者带来一些帮助,同时也能跟大家一起学习.当然了,由于我的个人技术及经验的有限,框 ...
- 2016-06-19 exshop第5天
昨天对grails3和spring-security进行了全面的调研并进行了试验,试用下来发现grails3的启动速度.代码修改后刷新速度.内存占用以及架构的设计上更加合理,asset-pipelin ...
- python全栈开发day85-查:数据表 数据头 增加列 展示多对多字段 反向解析编辑和删除按钮的url
直接上代码: # spark/service/sites.py from django.conf.urls import url from django.shortcuts import HttpRe ...
- spark操作Kudu之写 - 使用DataFrame API
在通过DataFrame API编写时,目前只支持一种模式“append”.尚未实现的“覆盖”模式 import org.apache.kudu.spark.kudu._ import org.apa ...
- sql 把一个用逗号分隔的多个数据字符串变成一个表的一列
USE [tms]GO/****** Object: UserDefinedFunction [dbo].[StrToTable] Script Date: 2017/4/26 9:06:20 *** ...
- Mysql数据库报错:Cannot add or update a child row: a foreign key constraint fails(添加多对多关系)
#创建班级表 class Classes(models.Model): title = models.CharField(max_length=32) n=models.ManyToManyField ...
- JS的异步世界
前言 JS的异步由来已久,各种异步概念也早早堆在开发者面前.可现实代码中,仍然充斥了各种因异步顺序处理不当的bug,或因不好好思考,或因不了解真相.今天,就特来再次好好探索一番JS的异步世界. 01 ...
- hadoop离线计算项目上线配置问题记录
最近上线一个hadoop离线处理项目,因为在低配置(8G,4核)的时候装的CDH,后来集群配置(64G,16核)上来了,但许多参数不会自动修改,需要自己调整,处理过程中遇到的配置问题记录下. 1.hi ...