PHP基础学习笔记1
一、基本语法
1.1 形式
PHP 脚本以 <?php 开始,以 ?> 结束:
<?php
//php代码
?> 1.2 注释
单行注释
//这是单行注释
多行注释
/*
这是
多行
注释
*/
二、变量规则(PHP是一门弱类型语言(弱类型即创建变量时不需要事先声明该变量的类型))
变量以 $ 符号开始,后面跟着变量的名称
变量名必须以字母或者下划线字符开始
变量名只能包含字母数字字符以及下划线(A-z、0-9 和 _ )
变量名不能包含空格
变量名是区分大小写的($y 和 $Y 是两个不同的变量)
三、变量作用域
3.1 四种作用域
local
global
static
parameter
3.2 函数要访问全局变量需要使用global关键字
<?php
$x=5;
$y=10;
function myTest() {
global $x,$y;
$y=$x+$y;
}
myTest();
echo $y; // 输出 15
?>
PHP 将所有全局变量存储在一个名为 $GLOBALS[index] 的数组中;index 保存变量的名称;
这个数组可以在函数内部访问,也可以直接用来更新全局变量;上面的实例可以写成这样:
<?php
$x=5;
$y=10;
function myTest() {
$GLOBALS['y'] = $GLOBALS['x'] + $GLOBALS['y'];
}
myTest();
echo $y;
?>
3.3 static作用域
<?php
function myTest() {
static $x=0;
echo $x;
$x++;
echo PHP_EOL; // 换行符
}
myTest();
myTest();
myTest();
?>
每次调用该函数时,该变量将会保留着函数前一次被调用时的值;注意:该变量仍然是函数的局部变
四、数据类型
String (字符串)
Integer(整型)
Float (浮点型)
Boolean(布尔型)
Array (数组)
Object (对象)
NULL (空值) var_dump() 函数返回变量的数据类型和值 五、类型比较
松散比较:使用两个等号 == 比较,只比较值,不比较类型
严格比较:用三个等号 === 比较,除了比较值,也比较类型
常量名不需要加 $ 修饰符;注意: 常量在整个脚本中都可以使用
6.1 常量设置
设置常量,使用 define() 函数,函数语法如下:
bool define ( string $name , mixed $value [, bool $case_insensitive = false ] )
该函数有三个参数:
name: 必选参数,常量名称,即标志符;
value:必选参数,常量的值;
case_insensitive :可选参数,如果设置为 TRUE,该常量则大小写不敏感;默认是大小写敏感的.
6.2 常量的作用范围
常量在定义后,默认是全局变量,可以在整个运行的脚本的任何地方使用
7.1 字符串连接
使用并置运算符 (.) 用于把两个字符串值连接起来:
<?php
$txt1="Hello world!";
$txt2="What a nice day!";
echo $txt1 . " " . $txt2;
?>
7.2 使用函数strlen()输出字符串的长度
7.3 使用函数strpos()在字符串内查找一个字符或一段指定的文本
<?php
echo strpos("Hello world!","world");
?>
echo '<br>'; // 换行
九、运算符
9.1 算术运算符

9.2 赋值运算符

9.4 比较运算符

9.5 逻辑运算符

9.6 数组运算符

9.7 三元运算符

PHP基础学习笔记1的更多相关文章
- 【C#编程基础学习笔记】4---Convert类型转换
2013/7/24 技术qq交流群:JavaDream:251572072 教程下载,在线交流:创梦IT社区:www.credream.com [C#编程基础学习笔记]4---Convert类型转换 ...
- 【C#编程基础学习笔记】6---变量的命名
2013/7/24 技术qq交流群:JavaDream:251572072 教程下载,在线交流:创梦IT社区:www.credream.com [C#编程基础学习笔记]6---变量的命名 ----- ...
- 1.C#基础学习笔记3---C#字符串(转义符和内存存储无关)
技术qq交流群:JavaDream:251572072 教程下载,在线交流:创梦IT社区:www.credream.com ------------------------------------- ...
- Java基础学习笔记总结
Java基础学习笔记一 Java介绍 Java基础学习笔记二 Java基础语法之变量.数据类型 Java基础学习笔记三 Java基础语法之流程控制语句.循环 Java基础学习笔记四 Java基础语法之 ...
- Mysql数据库基础学习笔记
Mysql数据库基础学习笔记 1.mysql查看当前登录的账户名以及数据库 一.单表查询 1.创建数据库yuzly,创建表fruits 创建表 ) ) ,) NOT NULL,PRIMARY KEY( ...
- 0003.5-20180422-自动化第四章-python基础学习笔记--脚本
0003.5-20180422-自动化第四章-python基础学习笔记--脚本 1-shopping """ v = [ {"name": " ...
- Java基础学习笔记(一)
Java基础学习笔记(一) Hello World 基础代码学习 代码编写基础结构 class :类,一个类即一个java代码,形成一个class文件,写于每个代码的前端(注意无大写字母) XxxYy ...
- C#RabbitMQ基础学习笔记
RabbitMQ基础学习笔记(C#代码示例) 一.定义: MQ是MessageQueue,消息队列的简称(是流行的开源消息队列系统,利用erlang语言开发).MQ是一种应用程序对应用程序的通信方法. ...
- handlebars.js基础学习笔记
最近在帮学校做个课程网站,就有人推荐用jquery+ajax+handlebars做网站前端,刚接触发现挺高大上的,于是就把一些基础学习笔记记录下来啦. 1.引用文件: jquery.js文件下载:h ...
- 基础学习笔记之opencv(6):实现将图片生成视频
基础学习笔记之opencv(6):实现将图片生成视频 在做实验的过程中.难免会读视频中的图片用来处理,相反将处理好的图片又整理输出为一个视频文件也是非经常常使用的. 以下就来讲讲基于opencv的C+ ...
随机推荐
- angular2 给下拉框动态赋值
html页中 其中aab是从后台获取的动态数据
- python3练习100题——036
原题链接:http://www.runoob.com/python/python-exercise-example36.html 题目:求100之内的素数. 之前有类似的题,所以这次遇到觉得很容易了, ...
- 微服务读取不到config配置中心配置信息,Spring Boot无法找到PropertySource:找不到标签Could not locate PropertySource: label not found
服务出现报这个错, o.s.c.c.c.ConfigServicePropertySourceLocator - Could not locate PropertySource: label not ...
- 【Unity|C#】番外篇(1)——6个重要概念:栈与堆,值类型与引用类型,装箱与拆箱
传送门:https://www.cnblogs.com/arthurliu/archive/2011/04/13/2015120.html
- nginx下载,安装,基础命令,和代理tomcat例子理解
nginx代理讲的很好理解:https://www.cnblogs.com/ysocean/p/9392908.html 一.nginx应用场景: 1.反向代理(用的非常多) 客户端发出请求,反向代理 ...
- EF CodeFirst关于Mysql如何自动生成数据库表
相对于sqlserver数据库,mysql的配置过程相对麻烦一些,我们从0讲起. 1.新建一个控制台应用程序 右键点击引用--管理NuGet程序包,搜索Mysql.Data.Entity并安装,安装完 ...
- java-日期取特定值
import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; /** * @author G ...
- (转)DNS使用的是TCP协议还是UDP协议
转自:DNS使用的是TCP协议还是UDP协议 DNS同时占用UDP和TCP端口53是公认的,这种单个应用协议同时使用两种传输协议的情况在TCP/IP栈也算是个另类.但很少有人知道DNS分别在什么情况下 ...
- SDF数据库
一.SDF数据库初探 SDF是一个标准缩略数据库格式.这个数据库包含扩展名为.sdf的文件并且以结构化文件格式进行数据存储.这些SDF文件通常用于在不同数据库应用之间移动数据.它允许一个用户将一个软件 ...
- npx工具
参考文章:阮一峰的网络日志 - npx 使用教程 npx的作用 1.调用项目模块 即node_modules目录下的模块,而不用加上相对路径 $ npx mocha --version 原本应该是这样 ...