php 环境

xamp wamp phpstudy等集成软件网上很多

PHP基础语法

PHP语法是以<?php开始
?>结束的//php 文件的默认扩展名是.php

例如(用PHP输出helloworld):

<!DOCTYPE html>
<html>
<body>
<?php
echo "hello world";
//PHP中的注释可以是 //
/* 也可以是(这个是多行注释)*/ /**/
?>
</body>
</html>

PHP变量

  • [x] 变量必须以$字符开始后面跟变量名称
  • [x] 变量名只能是大小写字母下划线和数字
  • [x] 数字不能作为变量的开始
  • [x] 变量名区分大小写且不能有空格
<?php
$test="变量第一次赋值的时候被创建";
$x=1;
$y=23.4;
?>
  • PHP变量不必声明数据类型(弱类型语言)
  • PHP会根据变量内容的值自动转换数据类型

PHP变量作用域

$ php 有四种不同的变量作用域

  • local
  • global
  • static
  • parameter
<?php
$x=3;
function test(){
$y=2;
echo "x:",$x,"<br>y:",$y;
//此时x没有值需要使用关键字声明
}
test();
echo "x:",$x,"<br>y:",$y;
// y属于局部变量所以y此时没有值
?>
  • [x] global关键字
<?php
$x=5;
$y=19;
function test(){
global $x,$y;
$y=$x+$y;
}
test();
echo $y;
?>
  • [x] global数组
<?php
$x=5;
$y=19;
function test(){
$GLOBAL['y']=$GLOBAL['x']+$GLOBAL['y'];
}
test();
echo $y;
?>
  • [x] static作用域
<?php
function test(){
static $x;
echo $x;
$x++;
echo "<br>";
}
test();
test();
test();
/*static 函数执行完毕函数内部的static变量不被释放留由下次执行函数使用*/
?>

echo 和 print 语句

  • echo 可以输出多个字符串(括号可加可不加)
  • print 只可以输出一个字符串,并且有返回值,返回值为1
<?php
$x=3;
$y=23;
echo "x=",$x,",y=",$y;
//当然可以这么输出
echo "x= $x ,y= $y";
?>
<?php
$a=3;
$b=23;
print "<br>";
print "a=$a,b=$b";
?>

PHP EOF

  • 必须后接分号
  • EOF可以用其它字符代替但是开始结尾必须一样
  • 结束标志必须独占一行
  • 变量可以正常解析,函数不可以
<?php
$name=nk1999;
echo <<<EOF
我的名字:$name<br>
<h1>test</h1>
EOF;
//EOF结束必须独立一行且前后不能空格
?>

PHP数据类型

  • String 字符串
  • integer 整型
  • float 浮点型
  • boolean 布尔型
  • array 数组
  • object 对象
  • NULL 空值

PHP类型比较

  • == 只比较值不比较类型
  • === 严格比较比较值和类型

PHP常量

  • 常量是个标识符在该脚本中值不能改变

  • 常量不需要加$修饰符

    <?php
    define("name","nk1999");
    echo name;
    define("myname","nk1999",true);//不区分大小写
    echo MYNAME;
    ?>
  • 常量是全局的定义以后可以在整个脚本任意地方使用

字符串变量以及函数

  • strlen() 返回字符串的长度
<?php
echo strlen("hello world!");//返回字符串长度
?>
  • strpos() 查找字符串或者指定文本位置
<?php
$txt="hello worldhello worldhello world";
echo strpos($txt,"world");
?>

PHP运算符

  • /
  • % 取余
  • -x 取反
  • . 并置 连接两个字符串
  • = 赋值运算
  • ++x x++ 自增
  • --x x-- 自减
  • == 等于不比较类型
  • === 绝对等于,比较类型
  • != 不等于
  • <> 不等于
  • !== 绝对不等于 包括类型
  • <> 小于大于
  • <=>= 小于等于大于等于
  • and 与
  • or 或
  • xor 异或
  • && 与
  • || 或
  • ! 非

数组运算

  • x+y x和y的集合
  • == 相等
  • === 恒等顺序也要对
  • != 不相等
  • <> 不相等
  • !== 不恒等

三元运算符 ?:

PHP if ...else语句

if语句

<?php
/*
if(条件){
如果条件为真执行此语句块,否则不执行;
}
*/
$a=3;
if($a==3){
echo $a;
}
?>

if...else语句

<?php
/*
if(条件){
如果条件为真执行此语句块;
}else{
如果条件不为真执行此语句块;
}
*/
$a=3;
if($a==3){
echo $a;
}else{
echo "a不为3";
}
?>

if...elseif...else

<?php
/*
if(条件){
条件成立执行代码
}elseif(条件){
条件成立执行代码
}else{
条件不成立执行代码
}
*/
$a=3;
if($a==3){
echo a=3;
}elseif($a==2){
echo "a=2";
}else{
echo "a不是2也不是3";
}
?>

PHP switch语句

如果有选择执行若干代码之一使用switch

<?php
$a=2;
switch($a){
case 1:echo "a=1";break;//break用于跳出否则会继续往下输出
case 2:echo "a=2";break;
case 3:echo "a=3";break;
default:echo "a不是123";//最后一句不用跳出
}
?>

PHP笔记01的更多相关文章

  1. 软件测试之loadrunner学习笔记-01事务

    loadrunner学习笔记-01事务<转载至网络> 事务又称为Transaction,事务是一个点为了衡量某个action的性能,需要在开始和结束位置插入一个范围,定义这样一个事务. 作 ...

  2. 《30天自制操作系统》笔记(01)——hello bitzhuwei’s OS!

    <30天自制操作系统>笔记(01)——hello bitzhuwei's OS! 最初的OS代码 ; hello-os ; TAB=4 ORG 0x7c00 ; 指明程序的装载地址 ; 以 ...

  3. 《The Linux Command Line》 读书笔记01 基本命令介绍

    <The Linux Command Line> 读书笔记01 基本命令介绍 1. What is the Shell? The Shell is a program that takes ...

  4. PHP 学习笔记 01

    例子: 为什么要学PHP 主观原因: 前段时间在学校处理了毕业的一些事情,回到上海后开始了找工作的旅程.意向工作是WPF开发或者ASP.NET 作为后端的WEB开发. 陆陆续续一直在面试,其中有一家公 ...

  5. 【技能大赛笔记01】Zigbee点对点按键控制程序开发

    [技能大赛笔记01]Zigbee点对点按键控制程序开发 --2017年"物联网物联网技术应用与维护"任务五题1(中职组) 1.题目要求 2.工程文件 在比赛中,提供了一个基于Bas ...

  6. JS自学笔记01

    JS自学笔记01 1.开发工具 webstorm 2.js(javascript) 是一门脚本.解释性.动态类型.基于对象的语言 含三个部分: ECMAScript标准–java基本语法 DOM(Do ...

  7. 《30天自制操作系统》笔记(01)——hello bitzhuwei’s OS!【转】

    转自:http://www.cnblogs.com/bitzhuwei/p/OS-in-30-days-01-hello-bitzhuwei-OS.html 阅读目录(Content) 最初的OS代码 ...

  8. ASP.NET Identity 2集成到MVC5项目--笔记01

    Identiry2是微软推出的Identity的升级版本,较之上一个版本更加易于扩展,总之更好用.如果需要具体细节.网上具体参考Identity2源代码下载 参考文章 在项目中,是不太想直接把这一堆堆 ...

  9. C++ GUI Qt4学习笔记01

    C++ GUI Qt4学习笔记01   qtc++signalmakefile文档平台 这一章介绍了如何把基本的C++只是与Qt所提供的功能组合起来创建一些简单的图形用户界面应用程序. 引入两个重要概 ...

  10. SaToken学习笔记-01

    SaToken学习笔记-01 SaToken版本为1.18 如果有排版方面的错误,请查看:传送门 springboot集成 根据官网步骤maven导入依赖 <dependency> < ...

随机推荐

  1. Laplacian Mesh Editing 拉普拉斯形变(待回学校更新)

    前言 因为实验需要用到拉普拉斯形变,但找了好久找到一个非常适合入门的资料.再此记录下我的学习过程,也算搬运翻译过来. Introduction / Basic Laplacian Mesh Repre ...

  2. mysql遇到java.sql.SQLNonTransientConnectionException: Public Key Retrieval is not allowed

    在连接数据库的url中,加上allowPublicKeyRetrieval=true from:https://blog.csdn.net/Gushiyuta/article/details/9323 ...

  3. JavaScript中的变量定义和声明

    变量声明旨在分配内存,定义为这个分配的内存分配一个值.

  4. c++ char* 与LPCTSTR相互转化

    ] = "wo shi ni baba"; , , ch, -, NULL, ); wchar_t *wide = new wchar_t[num]; MultiByteToWid ...

  5. ROS学习笔记6-理解主题

    本文来源于:http://wiki.ros.org/ROS/Tutorials/UnderstandingTopics ROS主题假设turtlesim节点已经运行,打开一个新终端,使用如下命令运行键 ...

  6. jQuery EasyUI window窗口实例

    <!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title>j ...

  7. Linux CentOS7 VMware克隆、虚拟机之间互连——初学笔记

    一.VMware克隆:选中我的第一个虚拟机,右键下拉菜单—管理—克隆. 弹出对话框,下一步根据提示:             完成克隆: 二.虚拟机互连: 配置第二虚拟机IP,使用:vi /etc/s ...

  8. redis-Hash(哈希表)

    Redis hash 是一个string类型的field和value的映射表,它的添加.删除操作都是O(1)(平均).hash特别适用于存储对象,将一个对象存储在hash类型中会占用更少的内存,并且可 ...

  9. Day9 - C - Bookshelf 2 POJ - 3628

    Farmer John recently bought another bookshelf for the cow library, but the shelf is getting filled u ...

  10. PHP+swoole实现聊天群发功能

    本篇文章主要介绍PHP+swoole实现聊天群发功能,感兴趣的朋友参考下,希望对大家有所帮助. php代码: $serv = new swoole_websocket_server("127 ...