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. C++中对C的扩展学习新增语法——引用

    引用 引用的好处: 1.引用的好处 C++使用结构体,不需要再使用 typedef. 2.值传递是将实参进行拷贝,赋值给形参,如果对象比较大,每次拷贝效率比较低,并且函数内部无法修改外部变量的值,能力 ...

  2. 使用 Zephir 轻松构建 PHP 扩展

    简介: 通过 PHP 扩展, 我们可以在 php 代码中使用一些特定的方法(大部分的 php 扩展都是用 C 写的). 比如,在 PHP 中需要与 SQLite3 交互,我们可以自己写方法与之进行连接 ...

  3. 在react中配置less

    在创建项目之后执行 $ yarn eject 抽离配置文件 会多出config和script文件夹 接下来安装less yarn add less less-loader 或者 npm install ...

  4. CGI、FastCGI、CLI、Apache、ISAPI之PHP运行环境对比

    1.运行模式 关于PHP目前比较常见的五大运行模式: 1)CGI(通用网关接口 / Common Gateway Interface) 2)FastCGI(常驻型CGI / Long-Live CGI ...

  5. Netty创建服务器与客户端

    Netty 创建Server服务端 Netty创建全部都是实现自AbstractBootstrap.客户端的是Bootstrap,服务端的则是ServerBootstrap. 创建一个 HelloSe ...

  6. 0MQ 事件驱动 以及 poller

    底层IO事件,以及借用socket poller的上层0MQ socket事件. 先来看用于底层和上层的两种poller. 这是用于底层io事件的poller_t,每个socket_base_t都关联 ...

  7. Python第五天 列表练习 元组类型 字典类型 小购物车练习

    # 反转 reverse# l=['lili','asdf','qwer','80000']# l.reverse()# print(l) # ['80000', 'qwer', 'asdf', 'l ...

  8. js数组之sort()函数

    一般我们使用sort函数进行数组的排序,sort()方法有一个可选参数,是用来确定元素顺序的函数.如果这个参数被省略,那么数组中的元素将按照ASCII字符顺序进行排序.如: var arr = [&q ...

  9. 数据库05 使用percona软件来进行数据备份

    1.为什么要与用percona来备份 常见的MySQL备份工具 —跨平台性差 —备份时间长.冗余备份.浪费存储空间 mysqldump备份缺点: —效率较低.备份与还原速度慢,锁表(即备份数据库中的一 ...

  10. startup启动不起来关于监听的问题

    问题描述:要在sqlplus中启动到startup状态,但是提示我没有监听,本来以为启动一下就可以,但是connecting to一直卡半天,stop都停止不了 1.发现监听有问题,前去更改 SQL& ...