zoukankan      html  css  js  c++  java
  • 4月24 php基础及函数的应用

    PHP是一种被广泛认可应用,运行在服务端的脚本语言,PHP需要安转PHP应用程序服务器去解释执行,是用来协助Web服务器工作的编程语言,因此所写的任何代码只有在www文件下的才能实施预览。PHP是一种弱类型语言,开发的环境也比较的随便,可以在DW中或在记事本中编写代码都是可以的。在DW中写在<body></body>内

    PHP的语言标记:
    <?php ?>是最最常见的,应用最广泛
    <? ?> 是简短风格的标记,会被禁用干扰,在特定的环境下才可以,一般不考虑
    <% %>课本有介绍,老师没有讲

    PHP输出语句:
    <?php
    echo "hello"; //最常见的输出语句
    print "word"; //也可以输出,但是不同在于只能输出一个字符串,不能多个
    echo "hi","nihao"; //像这样时print则不可以
    ?>

    PHP的注释方法:
    与c#中的注释是相同的,// 是单行注释,/* */是多行的注释

    数据类型
    在c#中常见的数据类型是:int double float string char(字符型) datetime bool
    而在PHP中由于其是弱类型语言,则前面不需要添加变量名,但是全部都需要以$符号开头
    <?php
    $a=5; //定义整型
    $b=5.5; //小数型
    $c=5.55; //双精度浮点型
    $d=ture; //bool型
    echo $d;
    ?>
    与c#中不同的是,而且要特别注意,是关于可变变量
    <?php
    $a="hello";
    $hello="world";
    echo $$a; //输出word
    echo "$a $hello"; //输出hello word
    echo "$a ${$a}"; //输出hell word
    ?>

    <?php
    $a=5; //空或是0表示false,1表示true
    echo isset($a); //当$a没有被定义时,输出空白页面,$a定义时输出1
    unset($a); //清除bianliang
    empty($a); //判断变量是否为空
    echo isset($a);
    ?>

    变量的引用赋值&的一些注意事项
    PHP中提供了另一种方式给另一个变量:引用变量,所用&
    <?php
    $a=5;
    $b=&$a; //&取地址,取了$a的值
    echo $a; //输出5
    echo "<br />";
    echo $b; //输出5

    $b=10;
    echo $a; //输出10 因为&取地址后一个发生变化,相应的关联的也会变化
    echo "<br />";
    echo $b; //输出10


    $foo="bob";
    $bar=&$foo;
    echo $bar; //没有发生改变之前只把地址传过去
    $bar="hello my love"; //一个改变其余那个也变了
    echo $bar;
    echo $foo;
    $foo="nihao nihao nihao"; //两者那个变化其余发生改变成立
    echo $bar;
    echo $foo;

    $foo=25;
    $bar=&$foo;
    $bar=&(5*7); //无效的赋值,错误的
    function test()
    {
    return 25;
    }
    $bar=&test();

    $a=25;
    $b=&$a;
    unset($b); //清空变量
    echo $a; //输出25
    echo isset($b); //空的,同上
    ?>
    准确输出,有转换的写法
    <?php
    $a=5;
    var_dump($a); //输出变量的准确类型
    $b =(string)$a; //类型转换
    var_dump($b);
    $c=(float)$a;
    var_dump($c);
    ?>

    PHP中的运算符号:
    大部分和c#中是一样的,特别注意/,在c#中是去商的,因为他们的类型不能相互转换
    int a=3;
    int b=10;
    b/a=3;
    而在PHP中
    <?php
    $a=10;
    $b=3;
    echo $a/$b; //输出3.333333可以自动转换

    echo "nihao"."hello"; //在php中字符串的拼接是用.,而不是像c#中用+
    ?>
    没有操作好知道就可以:
    @的作用是错误抑制符,可以屏蔽错误
    例如:echo @$a;

    三目运算符:在c#中是条件运算符
    <?php
    echo 5==5?"男":"女"; //条件运算符在c#中,,, 现在三目运算符
    ?>
    条件成立吗?是输出前面的,否输出:后面的 //上题输出男

    以上是24号上午老师所讲的内容,
    对于运算的++,--还有一定的总结
    <?php
    $a=10;
    $b=$a++; //先进性赋值 $b=$a=10; $a=$a+1;
    echo $a; // 输出11
    echo $b; // 输出10


    $a = 10;
    $b = ++$a; //先进行运算的$a=$a+1;再赋值 $b=$a;
    echo $a; // 输出11
    echo $b; // 输出11


    $a=10;
    $b=$a--; //先进性赋值 $b=$a=10; $a=$a-1;
    echo $a; // 输出9
    echo $b; // 输出10

    $a = 10;
    $b = --$a; //先进性运算 $a=$a-1;然后$b=$a;
    echo $a; // 输出9
    echo $b; // 输出9
    ?>

    以上是PHP的数据类型,以及基础的知识点

    PHP中的语句:条件语句,循环语句,分支语句与c#是同样的
    条件语句:
    <?php
    $a=5;
    if($a==8)
    {
    echo "正确";
    }
    else
    {
    echo "不相等";
    }
    ?>
    条件语句形式有:与c#中是完完全全相同的
    //if
    //if....else....
    //if...else if...
    //if的嵌套
    switch case类型的:
    <?php
    $a=7;
    switch($a)
    {
    case 1:
    echo "111"; //当没break时候则输出后面的所有
    break;
    case 2;
    echo "222";
    break;
    case 3:
    echo "333";
    break;
    default: //不在范围内的时候默认输出
    echo "不在范围";
    }
    ?>

    循环语句
    for类型的
    for($i=1;$i<10;$i++)
    {
    echo $i."<br>";
    }
    while类型的
    $a=1;
    while($a<10)
    {
    echo $a."<br>";
    $a++;
    }
    循环语句两种形式与c#中是完全相同的

    函数的一些重点内容
    函数四要素:返回类型,函数名(函数名最好是用首字母大写),参数(可以有也可以没有),函
    数体。这里一定要区分好在c#中,例如:pulic void name(){},在js中function name(){}
    PHP中的函数问题:
    最简单的
    <?php
    function Show()
    {
    echo "hello";
    }
    Show();

    //有参数的函数
    //有参数的
    function Show($a,$b)
    {
    echo $a+$b;
    }
    Show(3,4);
    Show(3,4,5); //可以多写但是不可少些

    //有默认值的函数
    function Show($a=5,$b=5)
    {
    echo $a+$b;
    }
    Show(3) //有默认值时看看是否被覆盖输出时3+5=8
    Show(2,3);//输出是5

    //参数可变的函数
    function Show()
    {
    $attr = func_get_args(); //通过方法可以自动获取函数的参数
    $sum =0;
    for($i=0;$i<count($attr);$i++) //func_num_args() 获取参数的个数
    {
    $sum =$sum+$attr[$i];
    }
    echo $sum;
    }
    Show(1,2,3);
    //两种方法是一样的
    function Show()
    {
    $attr = func_get_args(); //通过方法可以自动获取函数的参数
    $sum =0;
    $a=func_num_args();
    for($i=0;$i<$a;$i++) //func_num_args() 获取参数的个数
    {
    $sum =$sum+$attr[$i];
    }
    echo $sum;
    }
    Show(1,2,3);

    //有返回值的函数
    function Show()
    {
    return "aaaa";
    }
    echo Show();

    //常用的函数
    //随机数的函数
    echo rand()."<br>"; //括号里面没有写的时候范围很广
    echo rand(2,7)."<br>"; //从2到7随机数字
    echo rand()%75; //课本上讲的

    //时间函数
    echo time(); //此时输出的是时间戳
    echo date("Y-m-d H:i:s"); //因为时间没有设置东八区的时间所有不准确
    date_default_timezone_set('PRC'); //PRC也可以是"Etc/GMT-8"
    echo date("Y-m-d H:i:s:ms"); //ms是毫秒
    echo strtotime("2016-4-24"); //将时间格式转换为时间戳 php中时间的方式 与上面的正好
    相反

    //字符串处理函数 都是重点需要完全记住
    $a="hello";
    echo strlen($a); //返回字符串的长度
    echo strcmp("Hello","Hello"); //需要两个字符串作为参数,比较两个字符串是否相等,区分
    大小写,相等0,1or-1都是不等
    echo strcasecmp("hello","Hell"); //需要两个字符串作为参数,比较两个字符串是否相等,不区
    分大小写,相等0,1or-1都是不等
    echo strtolower("HELLO"); //将字符串装换为小写
    echo strtoupper("word"); //将字符串装换为大写

    $str ="hello|word|join|on";
    var_dump(explode("|",$str)); //拆分字符串 返回数组,在$str中以|未拆分 不能用
    echo输出
    $attr=array("aaa","111","ccc");
    echo implode("#",$attr); //将数组拼接成字符串,

    $str="hello|aa|bbb|cccc";
    echo substr_replace($str,"wwww",0,6); //首先|也是一个字符串,从a索引截取长度是b,用
    w替换,0是索引,6是长度 替换字符串(后面两个决定)
    echo str_replace("c","q",$str); //查找并全部替换,将c全部替换成q
    echo substr("$str",8,3); //从哪个位置开始截取,截取长度5   

    ?>
    关于单引号和双引号的一些用法: P55
    单引号:指定的一个简单的字符串的最简单的方法,在单引号中不能再含有单引号

    <?php
    $s1="hello"; //简单的定义都是可以的
    $s2='join';

    //1.双引号里面可以使用转义字符,单引号里面不可以使用会原样输出,不能使用
    //输出hello"word
    $s1="hello'word";
    $s2="hello"word"; // 是转义字符 双引号里面可以使用转义字符
    $s3='hello"word';
    $s4='hello"word'; //会原样输出
    echo $s1."<br>"; //单引号里面可以写双引号,双引号里面可以写单引号
    echo $s2."<br>";
    echo $s3."<br>";
    echo $s4."<br>";


    //2.双引号里面可以解析变量,单引号里面不行
    $a="join";
    $s1="hello"{$a}word"; //把变量a嵌套在字符串中
    echo $s1."<br>";
    $s2='hello"{$a}word'; //原样输出
    echo $s2;

    //定义字符串(块),这个字符串很大很大
    echo "<div style='color:white; background-color:red; height:50px;
    80px;'>hello</div>";
    //双引号里面的引号改成单引号

    //另外一种方法
    $str =<<<ETO
    <div style=" background-color:red; color:white; 100px; height:50px">hello</div>
    <div style=" background-color:red; color:white; 100px; height:50px">wold</div>
    ETO;
    echo $str;
    //<<<ETO首先之间不能有任何字符,空格都不可以,要用大写,名字随便

    $a=<<<NAME
    <div>111</div>
    <div>222</div>
    <div>333</div>
    <div>444</div> //div之间不可以用分号
    NAME;
    echo $a;

    ?>

  • 相关阅读:
    Reflector8使用技术
    Rose UML 活动图的画法
    .NET 4.0里异常处理的新机制-处理P/Invoker调用异常处理
    数据结构-树的相关算法
    Project 2013 使用大全
    .NET C#开发Activex系列之一:Activex发展背景
    C# Activex开发、打包、签名、发布
    Project 2013 理论基础
    UML类图与类的关系
    RUP(Rational Unified Process)统一软件开发过程
  • 原文地址:https://www.cnblogs.com/Duriyya/p/5428514.html
Copyright © 2011-2022 走看看