PHP学习总结
<?php
/*
PHP简介:
PHP是什么:PHP是一种创建动态交互性站点的强有力的服务器端脚步语言
PHP代表Hypertext Preprocessor
PHP是一种使用广泛的开源的脚本语言
PHP代码在服务器上执行,结果以纯HTML形式返回给浏览器
PHP文件可包含文本、HTML、JavaScript代码和PHP代码
PHP是免费的
PHP可以做什么:
PHP可以生成动态页面的内容
PHP可以创建、打开、读取、写入、关闭服务器上的文件
PHP可以收集表单数据
PHP可以发送和接受cookies
PHP可以添加、删除、修改您的数据库中的数据
PHP可以限制用户访问您的网站上的一些页面
PHP可以加密数据
PHP可以输出HTML,也可以输出图像、PDF文件、XHTML和XML.
为什么使用PHP:
PHP可以在不同的平台上运行
PHP与目前几乎所有的正在被使用的服务器相兼容
PHP提供广泛的数据库支持
PHP易于学习,并可搞笑地运行在服务器端
PHP语言:
PHP 语法:PHP脚本在服务器上执行,然后将纯HTML结果发送回浏览器
基本的PHP语法:
PHP可以放在文档中的任何位置
PHP脚本以<?php开始,以?>结束
<?php
//PHP 代码
?>
PHP 变量:
变量以$符号开始,后面跟着变量的名称
变量名必须以字母或者下划线字符开始
变量名只能包含字母数字字符以及下划线(A-a、0-9和_)
变量名不能包含空格
变量名区分大小写
变量在您第一次赋值给它的时候被创建,没有声明变量的命令。
PHP会根据变量的值,自动把变量转换为正确的数据类型。
$x=5;
PHP变量作用域:四种不同的变量作用域
locale
global
static:局部变量不想删除时使用
parameter
在所有函数外部定义的变量,拥有全局作用域。除了函数外,全局变量可以被脚本中的任何部分访问。
要在一个函数中访问一个全局变量,需要使用global关键字。
PHP将所有全局变量存储在一个名为$GLOBALS[var]的数组中,var是变量名。
在PHP函数内部声明的变量是局部变量,仅能在函数内部访问。
PHP echo和print语句:
PHP中两个基本的输出方式:echo和print。
echo:可以输出一个或多个字符串
echo "hello world";
echo "<br>";
echo "study php at $str1";
print:只能输出简单类型变量的值,如int,string
print_r:可以输出复杂类型变量的值,如数组,对象
PHP5 数据类型:
string(字符串)
一个字符串就是一串字符的序列,如"hello world"
可以将任何文本放在单引号和双引号中
Integer(整形)
整数是一个没有小数的数字,可以是正负数,可以用十进制、八进制、十六进制来指定。
var_dump函数返回变量的数据类型和值
$x=5985;
var_dump($x);返回//int(5985)
Float(浮点型)
浮点数是带小数部分的数字,或是指数形式。
$y=10.94;
var_dump($y);//返回float(10.94)
Boolean(布尔值)
布尔型可以是TRUE或FALSE
通常用于条件判断
$x=true;
Array(数组)
数组可以在一个变量中存储多个值
$cars=array("vovlo","BMW","TOYOTA");
Object(对象)
对象类型也可以用于存储数据,在PHP中对象必须声明
使用class关键字声明对象,类是可以包含属性和方法的结构
class Car{
}
NULL(空值)
NULL值表示变量没有值,NULL是数据类型为NULL的值
可以通过设置变量值为NULL来清空变量数据
$x=NULL;
PHP5 常量:
常量值被定以后,在脚本的其他任何地方都不能被改变。
常量可以在整个脚本中使用。
设置常量:
使用define()函数,语法如下:
define(string constant_name,mixed value,case_sensitive=true)
constant_name:常量名称,即标识符
value:常量的值
case_sensitive:指定是否大小写敏感,true表示不敏感
define("GREETING","welcome to w3c",true);
echo GREETING;
PHP 字符串变量:
字符串变量用于存储并处理文本。
常用的操作字符串的函数和运算符:
PHP并置运算符:
在PHP中,只有一个字符串运算符,并置运算符(.),用于把两个字符串值连接起来。
$txt1="hello";
$txt2=" world";
echo $txt1.$txt2;
PHP strlen()函数:
返回字符串的长度
echo strlen("hello world");
PHP strpos()函数
用于在字符串内查找一个字符或一段指定的文本。从0开始
如果在字符串中找到匹配,该函数会返回第一个匹配的字符位置。如果未找到匹配,则返回 FALSE。
echo strpos("hello world","world");
PHP 运算符:
算数运算符:+、-、/、%、*
赋值运算符:=、+=、-+、*=、/=、%=、.=
递增递减运算符:++x、--x、x++、x--
比较运算符:==,===、!=,!==,>,<,>=,<=
逻辑运算符:and,or,xor,&&,||,!
数组运算符:+,==,====,!=,<>,!==
PHP if-else语句:
用于根据不同条件执行不同动作。
if(){
}else{
}
PHP switch语句:
根据多个不同条件执行不同动作。
switch(n){
case 1:
//语句
break;
case 2:
//语句
break;
default:
}
PHP 数组:
数组是一个能在单个变量中存储多个值得特殊变量。
创建数组:array();
数组类型:
数值数组:带有数字ID键的数组
两种创建方法:
$cars = array("volvo","BMW","TOYOTA");
$cars[0]="volvo";
$cars[1]="BMW";
$cars[2]="TOYOTA";
获取数组的长度:count()函数,返回数组的长度(元素的数量)
echo count($cars);
遍历数值数组:使用for循环
$cars = array("volvo","BMW","TOYOTA");
$carlength=count($cars);
for($x=0;$x<$carlength;$x++){
echo $cars[$x];
echo "<br>";
}
关联数组:带有指定的键的数组,每个键关联一个值
两种创建方法:
$age=array("peter"=>"35","peter2"=>"36","peter3"=>"37");
$age['peter']="35";
$age['peter2']="36";
$age['peter3']="37";
使用:$age['peter']
遍历关联数组:foreach循环
$age=array("peter"=>"35","peter2"=>"36","peter3"=>"37");
foreach($age as $x=>$x_value){
echo $x.",value=".$x_value;
echo "<br>";
}
多维数组:包含一个或多个数组的数组
PHP 数组排序:
sort(); 对数组进行升序排列
rsort();对数组进行降序排列
asort();根据关联数组的值,对数组进行升序排列
arsort();根据关联数组的值,对数组进行降序排列
ksrot();根据关联数组的键,对数组进行升序排列
krsort);根据关联数组的键,对数组进行降序排列
PHP 超级全局变量:
PHP while循环:
PHP for循环:
PHP 函数:
PHP 魔术变量:
PHP 命名空间:
PHP 面向对象:
*/
?>
PHP学习总结的更多相关文章
- 从直播编程到直播教育:LiveEdu.tv开启多元化的在线学习直播时代
2015年9月,一个叫Livecoding.tv的网站在互联网上引起了编程界的注意.缘于Pingwest品玩的一位编辑在上网时无意中发现了这个网站,并写了一篇文章<一个比直播睡觉更奇怪的网站:直 ...
- Angular2学习笔记(1)
Angular2学习笔记(1) 1. 写在前面 之前基于Electron写过一个Markdown编辑器.就其功能而言,主要功能已经实现,一些小的不影响使用的功能由于时间关系还没有完成:但就代码而言,之 ...
- ABP入门系列(1)——学习Abp框架之实操演练
作为.Net工地搬砖长工一名,一直致力于挖坑(Bug)填坑(Debug),但技术却不见长进.也曾热情于新技术的学习,憧憬过成为技术大拿.从前端到后端,从bootstrap到javascript,从py ...
- 消息队列——RabbitMQ学习笔记
消息队列--RabbitMQ学习笔记 1. 写在前面 昨天简单学习了一个消息队列项目--RabbitMQ,今天趁热打铁,将学到的东西记录下来. 学习的资料主要是官网给出的6个基本的消息发送/接收模型, ...
- js学习笔记:webpack基础入门(一)
之前听说过webpack,今天想正式的接触一下,先跟着webpack的官方用户指南走: 在这里有: 如何安装webpack 如何使用webpack 如何使用loader 如何使用webpack的开发者 ...
- Unity3d学习 制作地形
这周学习了如何在unity中制作地形,就是在一个Terrain的对象上盖几座小山,在山底种几棵树,那就讲一下如何完成上述内容. 1.在新键得项目的游戏的Hierarchy目录中新键一个Terrain对 ...
- 《Django By Example》第四章 中文 翻译 (个人学习,渣翻)
书籍出处:https://www.packtpub.com/web-development/django-example 原作者:Antonio Melé (译者注:祝大家新年快乐,这次带来<D ...
- 菜鸟Python学习笔记第一天:关于一些函数库的使用
2017年1月3日 星期二 大一学习一门新的计算机语言真的很难,有时候连函数拼写出错查错都能查半天,没办法,谁让我英语太渣. 关于计算机语言的学习我想还是从C语言学习开始为好,Python有很多语言的 ...
- 多线程爬坑之路-学习多线程需要来了解哪些东西?(concurrent并发包的数据结构和线程池,Locks锁,Atomic原子类)
前言:刚学习了一段机器学习,最近需要重构一个java项目,又赶过来看java.大多是线程代码,没办法,那时候总觉得多线程是个很难的部分很少用到,所以一直没下决定去啃,那些年留下的坑,总是得自己跳进去填 ...
- node.js学习(三)简单的node程序&&模块简单使用&&commonJS规范&&深入理解模块原理
一.一个简单的node程序 1.新建一个txt文件 2.修改后缀 修改之后会弹出这个,点击"是" 3.运行test.js 源文件 使用node.js运行之后的. 如果该路径下没有该 ...
随机推荐
- ASP.NET MVC搭建项目后台UI框架—1、后台主框架
目录 ASP.NET MVC搭建项目后台UI框架—1.后台主框架 ASP.NET MVC搭建项目后台UI框架—2.菜单特效 ASP.NET MVC搭建项目后台UI框架—3.面板折叠和展开 ASP.NE ...
- arcgis api for js入门开发系列二不同地图服务展示(含源代码)
上一篇介绍了arcgis api离线部署,这篇开始正式介绍arcgis api for js开发:想要学习webgis开发,首先得熟悉了解前端技术,比如界面布局设计的html+css,核心的是java ...
- 使用IdleTest进行TDD单元测试驱动开发演练(1)
[前言] 开发工具:Visual Studio 2012 测试库:Visual Studio 2012自带的MSTest DI框架:Unity 数据持久层:Entity Framework 前端UI: ...
- 用drawRect的方式实现一个尺子
用drawRect的方式实现了一个尺子选择器,demo在这里:https://github.com/Phelthas/LXMRulerView 效果如图: 如果不考虑复用的问题,我感觉最简单的实现 ...
- GsonFormat插件从配置到使用
说明:目前多数服务器端都以json格式返回,那么相对应的解析时建立的实体类如果你还在自己挨个写的话,那就out了.新建一个类,选择Generate. ------------------------- ...
- C#用链式方法表达循环嵌套
情节故事得有情节,不喜欢情节的朋友可看第1版代码,然后直接跳至“三.想要链式写法” 一.起缘 故事缘于一位朋友的一道题: 朋友四人玩LOL游戏.第一局,分别选择位置:中单,上单,ADC,辅助:第二局新 ...
- linux基本知识
1.默认不写端口号就是80端口 127.0.0.1.localhost都代表本机 2.linux下的用户管理: id:可以查看当前用户whoami:查看当前的用户who:看当前已经登录的用户w:也 ...
- python随心笔记
print "hello,world" #打印hello,world print "1+1" #打印字符串 1+1 单引号和双引号是单行字符串 print [& ...
- 使用ABP EntityFramework连接MySQL数据库
ASP.NET Boilerplate(简称ABP)是在.Net平台下一个很流行的DDD框架,该框架已经为我们提供了大量的函数,非常方便与搭建企业应用. 关于这个框架的介绍我就不多说,有兴趣的可以参见 ...
- sublime text 3 快捷键大全以及配置编译环境
Sublime text 3是码农最喜欢的代码编辑器,每天和代码打交道,必先利其器,掌握基本的代码编辑器的快捷键,能让你打码更有效率.刚开始可能有些生疏,只要花一两个星期坚持使用并熟悉这些常用的快捷键 ...