1.php注释:/* */、//、#等三种方式
2.echo:向浏览器输出字符串,echo其实是一个函数;返回值:无
3.print:向浏览器输出字符串,它也是一个函数;返回值:整型。
            echo与print的功能几乎相同,但echo的运行速度比print要快,因为echo无返回值,而print有返回值 
4.printf功能:向浏览器输出字符串;返回值:字符串的长度。

5.php变量的创建:格式 :$+标识符。变量的数据类型有整型、浮点型、字符串、布尔型、数组、对象。php是弱类型,其类型是通过赋值来确定变量的类型的。
   /** 超级全局变量
   *    $GLOBALS :所有全局变量数组
   *    $_SERVER:服务器环境变量数组
   *    $_GET:通过get方法传递给该脚本的变量数组
   *    $_POST:通过POST方法传递给该脚本的变量数组
   *    $_COOKIE:cookie变量数组
   *    $_FILES:与文件上载相关的变量数组
   *    $_ENV:环境变量数组
   *    $_REQUEST:所有用户输入的变量数组
   *    $_SESSION:会话变量数组
   *    常量一旦被定义,就不能被修改。除了自定义常量外,php还预定了许多常量,了解这些常量的简单方法就是运行phpinfo()命令。
   */
//常量定义函数,返回值为布尔型.常量没有$符,变量才有$符的。(变量用小写,常量用大写)
  define("TOTAL", 100);
  echo TOTAL;  //输出100

===================================================================================
魔法常量:并不真的是常量,因为这些魔法常量会根据使用的场合而改变值。
_FILE_                          当前文件名
_LINE_                         当前行号
_FUNCTION_             当前函数名
_CLASS_                    当前类名
_METHOD_                当前方法名
=================
<?php
  $file = __FILE__;
  echo $file;  //输出该文件所在的完整路径
?>
6.php函数用法:php中的函数分为2类,一类为系统系统,该类函数可以直接使用;另一类为自定义函数。我们重点谈后者
   函数的使用须先创建,后调用。只有函数被调用后,才可执行。
  创建函数时,函数名不能与系统内置函数同名、也不能和已有的函数同名。只能包含字母、数字、下划线,并且不能以数字开头。【注意:在函数内部的变量与函数外的变量没有任何联系,因此,可以重名】
  定义函数格式:function   functionName($param1,$param2,...){
                                ........;
                               return  value;
                    }
  调用函数格式:functionName(1,2,...);
当定义函数时,参数有默认值时,如果调用函数时有值传递,则默认值无效。如果调用函数时无参数传弟,则采用默认值。如下所示:
function functionArea3($radius=10){
   $area = $radius*$radius*pi();
   return $area;
  }
  //调用.这样做,大大提高函数灵活性.functionArea2(10)整体得到一个值在内存中,
  echo functionArea3(20);
   echo "<br/>";
 
带参数,有返回值的函数。尽量将函数封起来,不要修改函数内部的东西,将需要修改的东西暴露在函数体外面。
 
/**
    * 返回多个值的函数调用:可以通过返回一个数组,然后使用list()函数构造即可
    */
   function functionInfo($name,$age,$job){
    //$userInfo是一个数组
     //$userInfo = array($name,$age,$job);
     $userInfo[]=$name;
     $userInfo[]=$age;
     $userInfo[]=$job;
     return $userInfo;
   }
   //调用。print_r()是输出数组内容的函数
   $arr = functionInfo("张三", 18, "学生");
   print_r($arr);
    echo "<br/>";
    echo $arr[0];//输出数组的第一个元素
    echo "<br/>";
   list($xingming,$nianling,$zhiye) = functionInfo("张三", 18, "学生");
   echo $xingming."今年".$nianling."岁了,他还是一个".$zhiye;
 以上调用,都是按值传参。下面研究函数的引用传参。
<?php
/**
 * 变量名是区分大小写的,所在$Name与$name是两个不同的变量。而函数名是不区分大小写的,那么函数调用也是不区分大小写的
 */
  //按值传参
  $prices = 50;
  $tax = 0.5;
  
  function functionPrices($prices,$tax){
   //记住:按值传参,函数内部的变量与外部的变量没有关系
   $prices = $prices + $prices*$tax;
   $tax = $tax*$tax;
  }
  
  functionPrices($prices, $tax);
  echo $prices;  //50
  echo '<br/>';
  echo $tax;  //0.5
   echo '<br/>';
   
  //按引用传参数
    function functionPrices2(&$prices,$tax){
  //记住:引用传参,外部访问到的变量,就是函数内部变量的值
   $prices = $prices + $prices*$tax;
   $tax = $tax*$tax;
  }
  
  functionPrices2($prices, $tax);
  echo $prices;  //75
  echo '<br/>';
  echo $tax;  //0.5
?>
 ===============================================================================
/**
   * 全局变量
   * Enter description here ...
   * @var unknown_type
   */
  $a = 5;
  function fa(){
   global $a;  //将$a设置成了全局变量,一般不推荐使用
   $a =10;
   
  }
  fa();
   echo $a; //10
  echo '<br/>';
  
    $a = 5;
  function fa2(){
   //global $a;
   $a =10;
   
  }
  fa2();
   echo $a; //5
  echo '<br/>';
  
  /**
   * 使用超级全局变量,其实是一个数组形式
   */
  $GLOBALS['a']=3;
  function fb(){
   $GLOBALS['a']=4;
  }
  fb();
  echo $GLOBALS['a'];  //4。因为是数组,所以,可以使用下面的格式输出
  print_r($GLOBALS);//4 与上一句效果一样
===================================================================
创建自己的函数库,通常将函数的集合存放于一个文件中,然后通过文件调用即可。
文件包含:为了确保模块的重用性,最普遍的做法是把功能类似的隔离成单独的文件。在需要用到时,调用该文件即可。PHP提供了4种在应用程序中包含文件的语句。

i:  include()语句将在其被调用的位置处判断并包含一个文件。包含一个文件与在该语句所在的位置复制该文件的数据具有相同的结果。

<?php

include “include.php”;

?>

 ii:include_once()函数的作用与include()相同,不过它会首先验证是否已经包含了该文件。如果包含了该文件,则不再执行incluce_once().
<?php
   include_once "include.php";
?>
iii: require()在很大程度上与include()相同,都是将一个模板文件包含到require()调用所在的位置。
<?php
   require("require.php");
?>
iiii:  require_once()函数的作用与require()作用相同,不过require_once()函数确保文件只包含一次。在遇到require_once()后,后面再试图包含相同的文件时都将被忽略。
<?php
   require_once("require.php");
?>
 
require语句与include()语句几乎是等价的。二者的差异在于,当这两个语句调用失败后,require()将给出一个致命错误,而include()只是给出一个警告。
 
7.gettype():该函数用来获取变量的类型。返回值:返回string类型。
   settype():该函数用来设置变量的类型。返回值:布尔值
   1代表true,空代表false
    isset():判断一个变量是否存在。返回一个布尔值
    unset():销毁一个变量。
    empty():检查一个变量的值是否为空。返回值:布尔值
    is_integer():判断变量的类型
    intval():变量的值的类型转换函数,只是临时转换,并未转换变量引用本身本身,只是将变量的值转换。需要与settype()函数区别开来。floatval()、strval()功能类似
8.表单:
如页面中的表单形式:
<form action="form_post.php" method="post">
 姓名:<input type="text" name="userName" value="123"/>
 <input type="submit" value="提交" />
</form>
/**
    *字符串连接,使用.就可以
    *请看form_post.php
   * 访问表单变量
   * 在php脚本中,可以以php变量的形式访问每一个表单域,其中php变量名称必须与表单的名称一致。
   * 3种方式访问表单数据:
   * $userName、不推荐使用
   * $_POST["userName"]、推荐使用
   * $HTTP_POST_VARS["userName"] 不推荐使用
   */
如何取出表单中传递过来的变量的值:首先看表单中采用的是post方式提交还是get方式提交。
post方式提交时,则取值的方式为:$_POST['userName'];//将上一张表单中name的名称的value值提取出来。userName为表单中的属性name的值
get方式提交时,则取值的方式为:则取值需要用$_GET['userName']。   userName为表单中的属性name的值

php 温故而知新 好久不用 又得继续学习下的更多相关文章

  1. 算是休息了这么长时间吧!准备学习下python文本处理了,哪位大大有好书推荐的说下!

    算是休息了这么长时间吧!准备学习下python文本处理了,哪位大大有好书推荐的说下!

  2. 学习下新塘M0芯片的下载方法

    编程方式多种多样,解释这几种方式的原理,方便做后续的回答: 一.脱机 脱机的意思就是脱离PC机,有很多芯片必须连接PC才能烧录,比如某些FPGA芯片.MCU芯片.NAND Flash芯片等.脱机和在线 ...

  3. RPC 框架要实现这个功能,我们可以使用泛化调用。那什么是泛化调用呢?我们带着这个问题,先学习下如何在没有接口的情况下进行 RPC 调用。

    RPC 框架要实现这个功能,我们可以使用泛化调用.那什么是泛化调用呢?我们带着这个问题,先学习下如何在没有接口的情况下进行 RPC 调用.

  4. 教会舍友玩 Git (再也不用担心他的学习)

    舍友长大想当程序员,我和他爷爷奶奶都可高兴了,写他最喜欢的喜之郎牌Git文章,学完以后,再也不用担心舍友的学习了(狗头)哪里不会写哪里 ~~~ 一 先来聊一聊 太多东西属于,总在用,但是一直都没整理的 ...

  5. swith 好久不用都忘记了

    switch 语句的格式: switch ( 整型或字符型变量 ) { case 变量可能值1 :   分支一; break; case 变量可能值2 :   分支二; break; case 变量可 ...

  6. 有了screen,妈妈再也不用担心我的学习啦

    创建一个srceen screen -S test1 从screen离开 crtl+a d (左手按住crtl和a 然后右手按d) 查看当前有多少screen screen -ls 回到screen ...

  7. jQuery 顺便学习下CSS选择器 奇偶匹配nth-child(even)

    今天学习jQuery,看到nth-child(even)用法,特意找了下这个选择器的用法,在CSS3标准中,用法很强大. 对此,我把CSS3标准中nth-child()用法大致介绍下: CSS3伪类选 ...

  8. 先学习下一些基础的js和xpath语法

    这两个方法到底是在做什么呢?其实就是克隆了当前指令的节点,并生成子作用域.克隆的节点由transclude定义,如果你的属性是true,则克隆的是指令模板中的ng-transclude所在的DOM节点 ...

  9. 装个蒜。学习下dispatch queue

    dispatch queue的真髓:能串行,能并行,能同步,能异步以及共享同一个线程池. 接口: GCD是基于C语言的APT.虽然最新的系统版本中GCD对象已经转成了Objective-C对象,但AP ...

随机推荐

  1. ThinkPHP 6.0 管道模式与中间件的实现分析

    设计模式六大原则 开放封闭原则:一个软件实体如类.模块和函数应该对扩展开放,对修改关闭. 里氏替换原则:所有引用基类的地方必须能透明地使用其子类的对象. 依赖倒置原则:高层模块不应该依赖低层模块,二者 ...

  2. C语言|博客作业05

    这个作业属于哪个课程 C语言程序设计II 这个作业的要求在哪里 https://edu.cnblogs.com/campus/zswxy/CST2019-1/homework/9825 我在这个课程的 ...

  3. jinjia2

    ansible-playbook --become --become-method=su -K copy.yml - hosts: web remote_user: ansible tasks: - ...

  4. 关于HashMap容量的初始化,还有这么多学问。

    在<HashMap中傻傻分不清楚的那些概念>文章中,我们介绍了HashMap中和容量相关的几个概念,简单介绍了一下HashMap的扩容机制. 文中我们提到,默认情况下HashMap的容量是 ...

  5. Python下定义输出日志

    # 话不多说,直接看代码,,, # -*- coding:UTF-8 -*- # python version: 2.7.15 #脚本名, 日志名,日志路径 import os import sys ...

  6. HttpClient POST/SET方法

    前言: 网络API接口:https://api.apiopen.top/searchMusic 此API接口返回类型为JSON格式类型 GET:从指定资源请求数据 POST:向指定资源提交要被处理的数 ...

  7. 小白学 Python 爬虫(12):urllib 基础使用(二)

    人生苦短,我用 Python 前文传送门: 小白学 Python 爬虫(1):开篇 小白学 Python 爬虫(2):前置准备(一)基本类库的安装 小白学 Python 爬虫(3):前置准备(二)Li ...

  8. Django如何启动源码分析

    Django如何启动源码分析 启动 我们启动Django是通过python manage.py runsever的命令 解决 这句话就是执行manage.py文件,并在命令行发送一个runsever字 ...

  9. CSS文字,文本常用样式

    CSS文字,文本常用样式 字体属性 font-family 如果电脑没有第一个字体,就切换到下一个 body { font-family: Microsoft YaHei,Helvetica,Aria ...

  10. SSO单点登录思路

    SSO (Single Sign On) 什么是单点登录: 在大型的互联网公司中会有多个系统, 多个项目, 虽然这些项目都属于同一家公司, 但是项目本身其实都是独立的, 那多个系统可不可以实现共享同一 ...