php基本语法与函数
1.标记与注释
<?php
代码
?>
用/* */注释一段代码, 用 // 注释一行代码 /** */文档注释
注意:若php下面只有php代码没有别的代码,那么最好不要加 ?>,这样后面的空格会被忽略,以免输出空格或回车,有可能在引用文件时出错。
指令分隔符“分号”:
功能执行语句后面必须加分号,例如echo "aaa"; $a = 100;
结构定义语句后面一定不要加分号,例如:if(true){} function aaa(){} class bbb{}等。
php中结束标记(?>)前的分号不是必选的。
2.输出语句
echo "hello","world"; echo可以输出多个字符串,用逗号隔开
print "hello"; print只能输出一个字符串
var_dump();此函数显示关于一个或多个表达式的结构信息,包括表达式的类型与值。数组将递归展开值,通过缩进显示其结构。
print_r() 显示关于一个变量的易于理解的信息。如果给出的是 string 、 integer 或 float ,将打印变量值本身。如果给出的是 array ,将会按照一定格式显示键和元素。 object 与数组类似。
记住, print_r() 将把数组的指针移到最后边。使用 reset() 可让指针回到开始处。
3.数据类型
php是弱类型语言
可以自动转换数据类型
php支持八中原始数据类型
- 四种标量类型:布尔型(boolean)、整型(integer)、浮点型(float)(浮点数,也作double)、字符串(string)
- 两种复合类型:数组(Array)、对象(Object)
- 两种特殊类型:资源(Resource)、NULL
4.变量定义
php定义变量以$开头
$a=5;
$b="hello";
可变变量: $a="hello";
$hello="world";
echo $$a; //输出world 判断变量是否定义:
$a=3;
echo isset($a); // true返回1, false返回0
清除变量:
unset($a);
判断变量是否为空:
empty($a)
变量引用(相当于起了个别名):
取地址: &
$a=5;
$b=&$a; //&取地址,a和b取内存中相同的地址,改变一个,另一个也跟着变
$b=10;
$c = 20;
$b = &$c;
echo $a." ".$b." ".$c; //输出10 20 20
unset($b); //只是取消值关联,引用的变量不会消失
echo $a; //输出10
echo $b; //$b已经消除,输出会报错
- 只有变量才有地址,也就是只有变量才有引用
- 一个变量发生变化,另一个变量的值也跟着变化
- 在使用unset()函数时,如果有引用关系,只是解除了这种引用关系,只删除一个名字,另一个还在
- 如果两个变量是引用关系,一个变,另一个也变,但是如果给其中一个引用,不是普通的值,而是一个新的引用,则改变引用关系
5.类型转换 $a=5;
var_dump($a); //输出变量详细信息 int 5
$b=(string)$a; //类型转换
var_dump($b); //string '5' (length=1) 6.运算符表达式 数学运算符: + - * / % ++ -- += -= $a=10;
$b=3;
echo $a/$b; //输出3.33333333333 字符串:拼接字符串用点不是用+ echo "hello"."world"; 比较运算符: < > <= >== == != 逻辑运算符: and && or || ! 错误控制运算符: @ echo @$a; //可以屏蔽错误 三元运算符: ? : echo true ?"男":"女";
7.语句
分支语句
if
if...else
if...else if...else
if的嵌套
$a=2;
switch($a)
{
case 1:
echo "1"; //选中多行语句,按Tab往右移,按Shift+Tab往左移
break;
case 2:
echo "2";
break;
case 3:
echo "3";
break;
default:
echo "default";
break;
}
循环语句
for($a=1;$a<=10;$a++)
{
echo $a."<br>" ;
}
$a=10;
while ($a>0)
{
echo $a."<br>";
$a--;
}
8.函数
//函数四要素: 返回类型, 函数名,参数,函数体
//函数定义方式
function show()
{
echo "hello";
}
show(); //输出hello //调用函数 //有返回值的函数
function show()
{
return "aaaa";
}
echo show(); //有参数的函数
function show($a,$b)
{
echo $a+$b;
}
show(3,4,5); //输出7 //php中可以多写参数 //有默认值的函数
function show($a=5,$b=5)
{
echo $a+$b;
}
show(); //输出10
show(3); //输出8 //把$a=5覆盖即$a=3
show(3,2); //输出5 //参数可变的函数
function show()
{
$attr = func_get_args(); //获取函数的参数
$sum=0;
for($i=0;$i<count($attr);$i++) //func_num_args() 获取参数的个数
{
$sum= $sum+$attr[$i];
}
echo $sum;
}
show(1,2);
show(1,2,3);
show(1,2,3,4); //输出10 //参数可以变化 //随机数函数
echo rand(0,100); //100以内的随机整数 //日期时间函数
date_default_timezone_set('PRC'); //改时区
echo time(); //取当前日期时间(时间戳)
echo date("Y-m-d H:i:s:ms",time()); //格式化日期时间 $a=strtotime("2016-5-6"); //将日期时间格式转化为时间戳
echo date("Y-m-d",$a); //将时间戳转化为日期时间格式 9.字符串处理函数
$a="hello";
echo strlen($a); //返回字符串长度 *****
strcmp ("hello","aa"); //判断两个字符串是否相等, 相等返回0,不相等返回1 //区分大小写
echo strcasecmp("aa","Aa"); //判断两个字符串是否相等, 相等返回0,不相等返回1 //不区分大小写 echo strtolower("HELLO"); //将字符串转换为小写 *****
echo strtoupper("hello"); //将字符串转换为大写 ***** $str = "hello|world|join|on";
var_dump(explode("|",$str)); //拆分字符串,返回数组 *****
$attr =array("aaa","bbb","ccc");
echo implode("|",$attr); //将数组拼接为字符串 ***** echo substr_replace($str,"aaa",0,5); //替换字符串(某个位置(从哪开始,长度)) ***** echo str_replace ("l","a",$str); //查找替换 ***** echo substr($str,6,5); //截取字符串 ***** 一些小知识点
//单引号和双引号都可以定义字符串
$s="join";
$a= "hello\"{$s}world";
$b='hello"{$s}world';
//1.双引号里面可以使用转义字符,单引号里面不能使用转义字符
//2.双引号里面可以解析变量,单引号不行
echo $a."<br>";
echo $b; 定义字符串(块)
//STR为标示名,可以随意写,最好为大写,与结尾标示名必须一致,与三个尖括号之间不能有任何字符
$str = <<<STR
<div style=" background-color:red; color:white; width:100px; height:30px">hello</div>
<div style=" background-color:red; color:white; width:100px; height:30px">world</div>
STR;
echo $str;
php基本语法与函数的更多相关文章
- python学习第五讲,python基础语法之函数语法,与Import导入模块.
目录 python学习第五讲,python基础语法之函数语法,与Import导入模块. 一丶函数简介 1.函数语法定义 2.函数的调用 3.函数的文档注释 4.函数的参数 5.函数的形参跟实参 6.函 ...
- MySQL 储存过程-原理、语法、函数详细说明
Mysql储存过程是一组为了完成特定功能的SQL语句集,经过编译之后存储在数据库中,当需要使用该组SQL语句时用户只需要通过指定储存过程的名字并给定参数就可以调用执行它了,简而言之就是一组已经写好的命 ...
- openresty开发系列14--lua基础语法3函数
openresty开发系列14--lua基础语法3函数 一)function (函数) 有名函数: optional_function_scope function function_name( ar ...
- JAVA基础语法:函数(方法)、类和对象(转载)
4.JAVA基础语法:函数(方法).类和对象 函数 在java中函数也称为方法,是一段具备某种功能的可重用代码块. 一个函数包括这几部分: 函数头 函数头包括函数访问修饰符,函数返回值类型, 函数名, ...
- python基础语法_9-0函数概念
http://www.runoob.com/python3/python3-function.html 函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段. 函数能提高应用的模块性,和代 ...
- Delphi_07_Delphi_Object_Pascal_基本语法_05_函数参数
这里主要讨论Delphi中函数.方法的相关内容. 一.工程文件 { Delphi语法方法和函数 1.方法 2.函数 } program Routine; {$APPTYPE CONSOLE} uses ...
- Swift3.0P1 语法指南——函数
原档:https://developer.apple.com/library/prerelease/ios/documentation/Swift/Conceptual/Swift_Programmi ...
- java基础(环境设置,基础语法,函数数组)
框架图 环境搭建 课程中常见dos命令: dir : 列出当前目录下的文件以及文件夹 md : 创建目录 rd : 删除目录 cd : 进入指定目录 cd.. : 退回到上一级目录 cd/ : 退回到 ...
- Kotlin语法(函数和lambda表达式)
三.函数和lambda表达式 1. 函数声明 fun double(x: Int): Int { } 函数参数是用 Pascal 符号定义的 name:type.参数之间用逗号隔开,每个参数必须指明类 ...
- Python 2.7 学习笔记 基本语法和函数定义
本文介绍下python的基本语法 一.变量定义 不需要说明类型,也不需要像js等脚本语言使用var等标识符.直接声明即可,如: num=1 说明:上面语句声明了一个变量num,并在声明时初始化值为 1 ...
随机推荐
- 安装Linux centos 时编辑选项
将第上一步选择编辑之后出来的文字修改为:>vmlinuz initrd=initrd.img linux dd quiet 这里注意了:网上很多文章都说这一步改成“>vmlinuz ini ...
- 【翻译自mos文章】asm 归档路径满了
asm 归档路径满了 參考原文: ASM Archive destination is full. (Doc ID 351547.1) 适用于: Oracle Server - Enterprise ...
- wps如何设置文字环绕图片
wps在编辑一些文字的时候,经常会插入一些图片,但是插入图片后,文字和图片就被分离开来,整体显得没有那么美观整洁,这个时候就用到了软件的文字环绕功能,那么具体如何设置呢,接下来看教程. 首先打开wps ...
- C# string[ ][ ] 与string[,]
1.string[][] 是一维数组,数组中的元素是string[],相当于锯齿数组 例如:string[][] arrar = new string[][] { n ...
- Resharper快捷键及用法
建议你使用 Reshaper 的快捷键,不要担心 Reshaper 会把你原来的快捷键设置给覆盖了,因为如果某个快捷键和 VS 是冲突的,Reshaper会让你自己选择需要使用 VS 还是 Resha ...
- SWERC13 Decoding the Hallway
找规律 S+1 = S +'L'+~rev(S) Problem D Decoding the Hallway Problem D Edward is now 21 years old. He has ...
- 深入浅出MySQL事务处理和锁机制
1. 事务处理和并发性 1.1. 基础知识和相关概念 1 )全部的表类型都可以使用锁,但是只有 InnoDB 和 BDB 才有内置的事务功能. 2 )使用 begin 开始事务 ...
- BMFont中文字体图集制作的方法~(for unity ngui)
BMFont中文字体图集制作的方法~(for unity ngui) 好吧~似乎这个问题困扰了很多人,游戏开始中文化是个不错的事儿啊,这里我就做下说明,如何制作中文字体图集~ 这里的字库图集的制作更多 ...
- 在freemarker文件中,html标签获取后台的值
1.<#assign a='3333' /> 2.<input type="text" id="name" name="name&q ...
- oracle、MySQL、SQL Server的比较
MySql的优点:1 MYSQL支持5000万条记录的数据仓库(3.x版本就支持了) 2 MYSQL适应所有平台 . 3 MYSQL是开源软件,开源的东西似乎总是比较实在一点,不会有太多商业化的考虑. ...