PHP基础之常量与变量
1、变量:用来存储信息的空间大小 $var
2、常量:定义之后不可以更改,标识符,并且给其赋值,常量是全局,在整个页面中均可使用,常量一般有英文字母、下划线、数字组成,开头不能是数字和$
使用define(常量的key,常量的value,true/flase)定义,define(number,2)
true/false:大小写问题,true--->大小写不敏感,默认是true
define(str,“icq”);
echo STR; 不能打印不出 icq
3、字符串 “ ” ‘ ’
字符串中有需要引号的地方要用单引号“ ‘ ’ ”或者“ \”\" "
使用 . 拼接字符串
strlen() 计算字符串长度
strops(字符串,需要寻找的字符串) 查找字符串,返回首次索引的位置
4、运算符:+ - * / %(取余)
整除 echo intdiv(4,3)
\php7.3.4nts>php.exe -R "var_dump(intdiv(4,3));"
赋值运算符 = += -= *= /= %= .=(转化成字符串,拼接在一起)
自增自减 (i=8)
$a=i++ $a=8 i=9 先赋值,后加一
$a=++I $a=9 i=9 先加一,后赋值
$a=--I $a=7 i=7 先减一,后赋值
$a=i-- $a=8 i=7 先赋值,后减一
比较运算符
== 等于 ===绝对等于 !=或者<>不等于 !==绝对不等于 < > <= >=
逻辑运算符
&& and 与
|| or 或
! 非
xor 异或(有且只有一个为真时,则结果为真) 相同为0,不同为1
三元运算符:
条件?表达式1:表达式2---->条件为真时,执行表达式1,条件为假时,执行表达式2
isset($get_value)判断$get_value是否有值,为NULL时返回false
表达式1??表达式2 如果表达式1有值,则返回它的值,如果没有值,则执行表达式2(PHP7)
$i=$a<=>$b 太空船操作符,如果$a大,则$i=1;如果$b大,则$i=-1;如果相等,则$i=0(PHP7)
5、简易Web服务:IIS apache nginx tomcat
PHP: php -S 0.0.0.0:port
Python2: python -m SimpleHTTPServer port (默认端口为8000)
Python3: python -m http.server port
6、条件判断:
if(条件){条件成立时执行的代码;}
if(条件){条件成立时执行的代码;}else{条件不成立时执行的代码;}
if(条件){条件成立时执行的代码;}elseif elseif else
switch
<?php
echo "<meta charset='utf-8'>";
$color=$_GET['color'];
switch ($color) {
case 'red':
echo "红色";
break;
case 'green':
echo "绿色";
break;
default:
echo "喜欢的颜色不在这";
break;
}
?>
7、循环:
for(初始值,条件,增量){要执行的} 循环
<?php
echo "<meta charset='utf-8'>";
for ($i=0; $i < 5; $i++) {
echo "当前数字为:".$i."\n\n";
}
?>
foreach 循环
<?php
echo "<meta charset='utf-8'>";
$array = array("one","two","there","for");
foreach ($array as $value) {
echo $value."\n\n";
}
?>
<?php
$array = array("one","two","there","for");
$arr=array('one' =>1 ,"two"=>"2","three"=>true,"te"=>2e-10 );
foreach ($arr as $key => $value) {
echo $key." is ".$value."\n\n";
}
?>
while 循环
<?php
echo "<meta charset='utf-8'>";
$i=0;
while ($i<=10) {
echo "Number is".$i."\n\n";
$i++;
}
?>
do while 循环
<?php
echo "<meta charset='utf-8'>";
$i=1;
do {
echo "Number is".$i."\n\n";
$i++;
} while ( $i <= 10)
?>
8、数组: print_r(); 可以打印数组
在单个变量中储存多种类型的值
类型:数字型数组,关联型数组(键值对数组)、多维数组
数字型数组
$array=array("1",123,1.24,ture)
下标是从0开始的,长度使用count()函数计算,遍历使用for/foreach
关联型数组:
$array=array("k1"=>value1,"k2"=>value2)
下标是键,k1,k2,遍历数组使用for/foreach
多位型数组:
$array=array(array(1,2,3),array(4,5,6),array(7,8,9));
数组的排序:
升序:sort() 降序:rsort()
针对关联型数组的值,升序:asort()
针对关联型数组的值,降序:arsort()
针对关联型数组的键,升序:ksort()
针对关联型数组的键,降序:krsort()
9、超级全局变量:
$GLOBALS //包含全部变量的全局组合数组
<?php
$a=1;
$b=8;
function add()
{
$GLOBALS['c']=$GLOBALS['a']+$GLOBALS['b'];
}
add();
echo $GLOBALS["c"];
?>
$_SERVER //包含请求头中信息,用户的IP、用户UA、头信息等等
<?php
echo $_SERVER["PHP_SELF"]."<br>";
echo $_SERVER["SERVER_NAME"]."<br>";
echo $_SERVER["HTTP_REFER"]; //在那个页面跳转过来
echo $_SERVER["HTTP_USER_AGENT"]; //服务器的版本
?>
$_REQUEST //包含用户提交的所有数据(POST/GET/COOKIE等)
$-POST //包含用户POST方式发过来的数据
$_GET //包含用户GET方式发过来的数据
$_FILES //包含用户发过来的文件对应的数据
$_EVN //包含服务端环境变量的数组
$_COOKIE // 包含COOKIE中的数据
$_SESSION //包含了session中的数据
10、cookie和session的比较:
- cookie是存放在用户的浏览器中,是服务端通过返回包中set-cookie设置,cookie表示用户的浏览器和服务器之间会话状态,登录成功后方可获取cookie数据,该数据一般具有时效性,失效之后需要用户重新去登录。有了cookie数据之后,用户的每次请求都会带上cookie,服务端会验证该cookie的合法性和时效性,cookie的发送需要遵循浏览器的同源策略。
- session是存放在服务端的,表示用户和服务器时间的会话状态,session和cookie是一一对应的,服务器也需要记住哪个用户登录了该站点,一般情况下,session以文件的形式保存在/tmp文件中,形式为sess_XXX,例如:sess_5mt9vacml24gp0j5eru386iuf5,此刻服务器给浏览器分配的cookie是:5mt9vacml24gp0j5eru386iuf5,只要该cookie被修改过,那么服务器就要求用户重新登录。
11、有意思的常量(预定义常量):
__LINE__; 表示所在的行号
__FILE__ ; 表示当前文件的路径及文件名
__DIR__; 表示当前文件的路径
__FUNCTION__; 表示当前定义的函数名
__CLASS__; 表示当前类名
PHP基础之常量与变量的更多相关文章
- Swift语言指南(一)--语言基础之常量和变量
原文:Swift语言指南(一)--语言基础之常量和变量 Swift 是开发 iOS 及 OS X 应用的一门新编程语言,然而,它的开发体验与 C 或 Objective-C 有很多相似之处. Swif ...
- 02_Swift2基础之常量和变量+注释+分号
1. 常量和变量 常量 和 变量 把一个名字(比如 'number' 或者 'welcomeMessage')和一个指定类型的值(比如数字'10'或者字符串 ' "Hello" ' ...
- JavaScript基础——JavaScript常量和变量(笔记)
JavaScript常量和变量(笔记) Javascript代码严格区分大小写. javascript暂不支持constant关键字,不允许用户自定义常量. javascript使用var关键字声明变 ...
- 二、JavaSE语言基础之常量与变量
1.常量 所谓常量值的是数据处理过程中值不能更改的数据. 2.变量 所谓变量值的是运算过程中值可以改变的数据,类似于代数中的未知数. 在Java语言中,使用变量时必须遵循先定义,而后赋值, ...
- java基础之常量与变量
概要:通过这段时间的工作,发现自己的基础还是很薄弱的,so,you know 常量 一种特殊的变量,程序运行过程中不能改变的值 语法格式:final 数据类型 常量名称 = 常量值 例子:fina i ...
- Java基础学习-常量和变量
1.常量概述 -在程序执行的过程中,其值不可以发生改变的量. 2.常量的分类 -字符串常量 用双引号括起来的内容("HelloWorld") -整数常 ...
- Java之--Java语言基础组成(关键字、标识符、注释、常量和变量、运算符)
Java语言基础组成-关键字.标识符.注释.常量和变量.运算符 Java语言由8个模块构成,分别为:1.关键字:2.标识符(包名.类名.接口名.常量名.变量名等):3.注释:4.常量和变量:5.运算符 ...
- PHP 基础语法 常量 变量
PHP基础语法 标记 当解析一个文件时,PHP 会寻找起始和结束标记,也就是 <?php 和 ?>,这告诉 PHP 开始和停止解析二者之间的代码.此种解析方式使得 PHP 可以被嵌入到各种 ...
- JAVA_SE基础——7.常量&变量
上一篇,我讲了标识符&关键字 这篇我来解释下变量&常量~~~ 变量与常量这两个概念相信大家都不会感到陌生,在数学中就已经涉及了变量与常量.理解变量与常量,可以举这样一个例子: 例 ...
随机推荐
- PHPExcel将Excel数据导入数据库
<?php //PHPExcel读取导入Excel数据到数据库(2003,2007通用)使用方法: //先用excel2array()方法将excel表中的数据存储到数组,在从遍历二维数组将数据 ...
- Fortify Audit Workbench 笔记 Password Management: Password in Configuration File(明文存储密码)
Password Management: Password in Configuration File(明文存储密码) Abstract 在配置文件中存储明文密码,可能会危及系统安全. Explana ...
- mac下高效安装 homebrew 及完美避坑姿势 (亲测有效)
世上无难事,只要找到 Homebrew 的正确安装方式. Homebrew 是什么 Homebrew是 mac的包管理器,仅需执行相应的命令,就能下载安装需要的软件包,可以省掉自己去下载.解压.拖拽( ...
- Python os.fstat() 方法
概述 os.fstat() 方法用于返回文件描述符fd的状态,类似 stat().高佣联盟 www.cgewang.com Unix,Windows上可用. fstat 方法返回的结构: st_dev ...
- PHP parse_ini_file() 函数
定义和用法 parse_ini_file() 函数解析一个配置文件(ini 文件),并以数组的形式返回其中的设置. 语法 parse_ini_file(file,process_sections) 参 ...
- Skill 导出所有Layer信息用于tapeout
https://www.cnblogs.com/yeungchie/ 用于在 tapeout 前要走的流程,foundry 会需要你上传一份芯片用到的所有 Layer 的 excel 文档. TAB ...
- 6.29 省选模拟赛 坏题 AC自动机 dp 图论
考场上随手构造了一组数据把自己卡掉了 然后一直都是掉线状态了. 最后发现这个东西不是subtask -1的情况不多 所以就没管无解直接莽 写题有点晚 故没调出来.. 考虑怎么做 容易想到建立AC自动机 ...
- 6.18 省选模拟赛 树 倍增 LCT
LINK:树 考虑暴力 保存每个版本的父亲 然后暴力向上跳.得分20. 考虑离线 可以离线那么就可以先把树给搞出来 然后考虑求k级祖先 可以倍增求. 如何判断合法 其实要求路径上的边的时间戳<= ...
- 解Bug之路-Nginx 502 Bad Gateway
解Bug之路-Nginx 502 Bad Gateway 前言 事实证明,读过Linux内核源码确实有很大的好处,尤其在处理问题的时刻.当你看到报错的那一瞬间,就能把现象/原因/以及解决方案一股脑的在 ...
- React Hook~部分实用钩子
useCompareEffect /** * useCompareEffect * useEffect只是普通的浅比较,这里做了深比较 * useEffect的依赖是否相同,相同不触发 */ impo ...