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基础之常量与变量的更多相关文章

  1. Swift语言指南(一)--语言基础之常量和变量

    原文:Swift语言指南(一)--语言基础之常量和变量 Swift 是开发 iOS 及 OS X 应用的一门新编程语言,然而,它的开发体验与 C 或 Objective-C 有很多相似之处. Swif ...

  2. 02_Swift2基础之常量和变量+注释+分号

    1. 常量和变量 常量 和 变量 把一个名字(比如 'number' 或者 'welcomeMessage')和一个指定类型的值(比如数字'10'或者字符串 ' "Hello" ' ...

  3. JavaScript基础——JavaScript常量和变量(笔记)

    JavaScript常量和变量(笔记) Javascript代码严格区分大小写. javascript暂不支持constant关键字,不允许用户自定义常量. javascript使用var关键字声明变 ...

  4. 二、JavaSE语言基础之常量与变量

    1.常量   所谓常量值的是数据处理过程中值不能更改的数据. 2.变量   所谓变量值的是运算过程中值可以改变的数据,类似于代数中的未知数.   在Java语言中,使用变量时必须遵循先定义,而后赋值, ...

  5. java基础之常量与变量

    概要:通过这段时间的工作,发现自己的基础还是很薄弱的,so,you know 常量 一种特殊的变量,程序运行过程中不能改变的值 语法格式:final 数据类型 常量名称 = 常量值 例子:fina i ...

  6. Java基础学习-常量和变量

    1.常量概述     -在程序执行的过程中,其值不可以发生改变的量. 2.常量的分类     -字符串常量    用双引号括起来的内容("HelloWorld")     -整数常 ...

  7. Java之--Java语言基础组成(关键字、标识符、注释、常量和变量、运算符)

    Java语言基础组成-关键字.标识符.注释.常量和变量.运算符 Java语言由8个模块构成,分别为:1.关键字:2.标识符(包名.类名.接口名.常量名.变量名等):3.注释:4.常量和变量:5.运算符 ...

  8. PHP 基础语法 常量 变量

    PHP基础语法 标记 当解析一个文件时,PHP 会寻找起始和结束标记,也就是 <?php 和 ?>,这告诉 PHP 开始和停止解析二者之间的代码.此种解析方式使得 PHP 可以被嵌入到各种 ...

  9. JAVA_SE基础——7.常量&变量

    上一篇,我讲了标识符&关键字    这篇我来解释下变量&常量~~~ 变量与常量这两个概念相信大家都不会感到陌生,在数学中就已经涉及了变量与常量.理解变量与常量,可以举这样一个例子: 例 ...

随机推荐

  1. PHPExcel将Excel数据导入数据库

    <?php //PHPExcel读取导入Excel数据到数据库(2003,2007通用)使用方法: //先用excel2array()方法将excel表中的数据存储到数组,在从遍历二维数组将数据 ...

  2. Fortify Audit Workbench 笔记 Password Management: Password in Configuration File(明文存储密码)

    Password Management: Password in Configuration File(明文存储密码) Abstract 在配置文件中存储明文密码,可能会危及系统安全. Explana ...

  3. mac下高效安装 homebrew 及完美避坑姿势 (亲测有效)

    世上无难事,只要找到 Homebrew 的正确安装方式. Homebrew 是什么 Homebrew是 mac的包管理器,仅需执行相应的命令,就能下载安装需要的软件包,可以省掉自己去下载.解压.拖拽( ...

  4. Python os.fstat() 方法

    概述 os.fstat() 方法用于返回文件描述符fd的状态,类似 stat().高佣联盟 www.cgewang.com Unix,Windows上可用. fstat 方法返回的结构: st_dev ...

  5. PHP parse_ini_file() 函数

    定义和用法 parse_ini_file() 函数解析一个配置文件(ini 文件),并以数组的形式返回其中的设置. 语法 parse_ini_file(file,process_sections) 参 ...

  6. Skill 导出所有Layer信息用于tapeout

    https://www.cnblogs.com/yeungchie/ 用于在 tapeout 前要走的流程,foundry 会需要你上传一份芯片用到的所有 Layer 的 excel 文档. TAB ...

  7. 6.29 省选模拟赛 坏题 AC自动机 dp 图论

    考场上随手构造了一组数据把自己卡掉了 然后一直都是掉线状态了. 最后发现这个东西不是subtask -1的情况不多 所以就没管无解直接莽 写题有点晚 故没调出来.. 考虑怎么做 容易想到建立AC自动机 ...

  8. 6.18 省选模拟赛 树 倍增 LCT

    LINK:树 考虑暴力 保存每个版本的父亲 然后暴力向上跳.得分20. 考虑离线 可以离线那么就可以先把树给搞出来 然后考虑求k级祖先 可以倍增求. 如何判断合法 其实要求路径上的边的时间戳<= ...

  9. 解Bug之路-Nginx 502 Bad Gateway

    解Bug之路-Nginx 502 Bad Gateway 前言 事实证明,读过Linux内核源码确实有很大的好处,尤其在处理问题的时刻.当你看到报错的那一瞬间,就能把现象/原因/以及解决方案一股脑的在 ...

  10. React Hook~部分实用钩子

    useCompareEffect /** * useCompareEffect * useEffect只是普通的浅比较,这里做了深比较 * useEffect的依赖是否相同,相同不触发 */ impo ...