首页 > 代码库 > 李炎恢PHP笔记

李炎恢PHP笔记

Print 

Echo print 输出

转型

$sum=0;

$total=(float)$sum

Isset()   unset()判断一个变量是否存在

 

$echo intval$sum 浮点型

Define(“total”,100); 常量一旦定义就不可更改

判断句

<?php

If ($userAge>14){

Echo’内容’;}

?>

 

<?php

If ($userAge>14){

Echo’内容’;}

Else{echo ‘wufawutian’};

?>

 

If ($userAge>50){

Echo ’内容’;}

Elseif ($userAge>20){

Echo ’内容’;}

Elseif ($userAge>30){

Echo ’内容’;}

Else ($userAge>50){

Echo ’内容’;}

 

}

 

<?php

 

       //多重线路,

      

       //break退出问题,叫做中途退出这个条件判断

 

       $weekday = 8;

 

       switch ($weekday) {

              case 1:

                     echo ‘今天星期一,吴祁买新衣!‘;

                     break;

              case 2:

                     echo ‘今天星期二,去洗澡!‘;

                     break;

              case 3:

                     echo ‘今天星期三,上山大老虎!‘;

                     break;

              default:

                     echo ‘无聊在家!‘;      

       }

 

 

 

 

 

 

 

 

 

<?php

 

       //while循环

       //当判断表达式为假的时候,退出循环

 

       $a = 10;

      

       while ($a > 0) {

              echo $a;

              $a--;

              echo ‘<br />‘;

       }

 

?>

 

 

 

<?php

 

 

       //break退出当前循环

//

//     for ($i = 1;$i <= 10; $i++) {

//    

//            //在这个循环里面嵌套一个IF判断语句

//            if ($i == 5) {

//                   break;   //中途退出循环

//            }

//           

//            echo $i.‘<br />‘;

//           

//     }

      

       //exit退出整个程序

 

//     for ($i = 1;$i <= 10; $i++) {

//    

//            //在这个循环里面嵌套一个IF判断语句

//            if ($i == 5) {

//                   exit;   //退出整个程序

//            }

//           

//            echo $i.‘<br />‘;

//           

//     }

//    

//    

//     echo ‘我还是会执行的‘

 

 

 

       //continue退出当前这个循环继续下次循环

 

       for ($i = 1;$i <= 10; $i++) {

      

              //在这个循环里面嵌套一个IF判断语句

              if ($i == 5) {

                     continue;   //退出当前本次循环,并且继续下次循环OK

 

              }

             

              echo $i.‘<br />‘;

             

       }

 

?>

 

 

 

<?php

 

       //do while

 

       $a = 10;

 

       do {

              echo $a;

              $a--;

              echo ‘<br />‘;

       } while ($a>0)

 

?>

       //do while

 

       $a = 10;

 

       do {

              echo $a;

              $a--;

              echo ‘<br />‘;

       } while ($a>0)

 

?>

 

       //do while

 

       $a = 10;

 

       do {

              echo $a;

              $a--;

              echo ‘<br />‘;

       } while ($a>0)

 

?>

 

 

<meta http-equiv="Content-Type" content="text/html; charset=GBK">

<?php

 

       $prices=array("c"=>"苹果","a"=>"猪肉","b"=>"饼干");

 

       print_r(array_count_values($prices));

      

 

?>

 

 

数学函数

<?php

 

       $a = ‘123.33e‘;

 

       //echo is_numeric($a);

      

       if (is_numeric($a)) {

              echo ‘a是一个数字‘;

       } else {

              echo ‘a不是一个数字‘;

       }

 

?>

 

 

<?php

 

       $a = 10.0;

 

       //如果是真(true)返回1,否则返回空

       //     if (is_int($a)) {

      

       if (is_double($a)) {

              echo ‘a是一个浮点数‘;

       } else {

              echo ‘a不是一个浮点数‘;

       }

 

?>

 

 

《?Php

$userNames = array(‘李彦宏‘,‘周鸿祎‘,‘马云‘,‘俞敏洪‘,‘李开复‘,‘吴祁‘);

$userNames[5] = ‘李炎恢‘;

 

       echo $userNames[5];

      

       print_r($userNames);

?》

打印出24个字母

<?php

 

       //range包含指定数组

       //包含两种东西,一种叫做键(key),一种叫做值(value)

       //key是自动生成的,默认从0开始,每次+1

       //value是你自己赋值的

 

//     $numbers = range(1,10);

//    

//     print_r($numbers);

 

       $letters = range(‘a‘,‘z‘);

      

       //print_r($letters);

      

       echo $letters[15];

 

?>

 

?>

 

 

统计数据

<?php

//通过foreach循环来遍历数组,这方式好处,不需要去考虑key
//foreach遍历 $key => $value
//所以,你要先做个判断

$userNames = array(‘李彦宏‘,‘周鸿祎‘,‘马云‘,‘俞敏洪‘,‘李开复‘,‘吴祁‘);

if (is_array($userNames)) {  //判断一下到底是不是数组 

              foreach ($userNames as $key => $value) {

                     echo $key.‘---‘.$value.‘<br />‘;

              }

       } else {

              echo $userNames;

       }

 

?>

 

<?php

 

      //创建自定义键(key)的数组

     

       //如果你不去声明元素的key,那么从开始0计算

       $userNames = array(‘baidu‘=>‘李彦宏‘,‘taobao‘=>‘马云‘,‘360‘=>‘周鸿祎‘);

      

       //print_r($userNames);

      

       echo $userNames[‘baidu‘];

      

       echo $userNames[‘360‘];

 

?>

 

<?php

 

 

       //先创建只有一个元素的数组

        $userAges = array(‘吴祁‘=>19);

       //打印出吴祁的年龄

       // echo $userAges[‘吴祁‘];

        //将以前的数组,追加两条,这里说的下标,键,key是一个东西

        $userAges[‘李炎恢‘] = 27;

        $userAges[‘胡心鹏‘] = 23;

        

       // echo $userAges[‘李炎恢‘];

      

        print_r($userAges);

 

?>

 

 

<?php

//     $userAges[‘吴祁‘] = 19;

//     $userAges[‘李炎恢‘] = 27;

//     $userAges[‘胡心鹏‘] = 23;

       $userAges = array(‘吴祁‘=>19,‘李炎恢‘=>27,‘胡心鹏‘=>23);

       //each的使用

       //each --  返回数组中当前的键/值对并将数组指针向前移动一步

       //这里有一个指针,默认情况下,指针是指向第一个键值对

       //这里的第一个键值对是 ‘吴祁‘=>19

       //如果each($userAges),那么获取的就是第一个键值对 ‘吴祁‘=>19

       //each这个函数返回的是一个数组,

       //each将第一个键值对获取到,然后包装成一个新数组。

       //相当于  $a = array( [0] => 吴祁,[1] => 19,[value] => 19,[key] => 吴祁)

       each($userAges);//这个是第一步,将19,吴祁取出,包装成新数组

       each($userAges);

       $a = each($userAges); //这个是第二步了,指针已经下移一条,

       echo $a[‘key‘];

?>

 

 

<?php

 

       //创建一个单一的数组

 

       $products = array(

                                          array(‘苹果‘,6,28.8),

                                          array(‘猪肉‘,2,32.1),

                                          array(‘饼干‘,3,45.3)

       );

       //print_r($products);

       //将$products第一条元素取出来

       //数组里的数组

       echo "|".$products[0][0]."|".$products[0][1]."|".$products[0][2]."|<br />";

       echo "|".$products[1][0]."|".$products[1][1]."|".$products[1][2]."|<br />";

       echo "|".$products[2][0]."|".$products[2][1]."|".$products[2][2]."|<br />";

?>

<?php

       //创建一个单一的数组

       $products = array(

              array(‘产品名‘=>‘苹果‘,‘数量‘=>6,‘价格‘=>28.8),

              array(‘产品名‘=>‘猪肉‘,‘数量‘=>2,‘价格‘=>32.1),

              array(‘产品名‘=>‘饼干‘,‘数量‘=>3,‘价格‘=>45.3)

       );

//     print_r($products);

//     for ($i=0;$i<count($products);$i++) {

//            foreach ($products[$i] as $key => $value) {

//                   echo $key.‘--‘.$value.‘|‘;

//            }           

//            echo ‘<br />‘;

//     }

       for ($i=0;$i<count($products);$i++) {

              while (!!list($key,$value) = each($products[$i])) {

                     echo $key.‘--‘.$value.‘|‘;

              }

              echo ‘<br />‘;

       }

 

?>

 

 

数组排序

<?php

       $numbers = array(2,34,1,5,88,2,3,667,34);

       rsort($numbers);

       print_r($numbers);

 

?>

 

<?php

 

       $fruit = array(‘c‘=>‘banner‘,‘a‘=>‘orange‘,‘b‘=>‘apple‘); 

      

       //按照键(key)名排序

      

       krsort($fruit);

      

       print_r($fruit);

 

?>

 

<?php

 

//     echo ‘<img src="http://www.mamicode.com/images/mm1.jpg" />‘

 

       //创建一个数组

       $pic = array(‘mm1.jpg‘,‘mm2.jpg‘,‘mm3.jpg‘,‘mm4.jpg‘,‘mm5.jpg‘);

 

       $a = array_rand($pic);

      

       //数组进行随即打乱

       //shuffle($pic);

      

       //多数组进行反向排序,array打头的函数,一般会创建一个新数组

       $a = array_reverse($pic);

      

//     print_r($a);

      

      

       for ($i=0;$i<3;$i++) {

              echo ‘<img src="http://www.mamicode.com/images/‘.$a[$i].‘" style="margin:10px;" />‘;

              echo "\n";

       }

 

?>

 

 

<?php

 

       $userName = array(‘吴祁‘);

 

      

       //这个函数的返回值将得到,目前数组的元素个数

       //在开头插入数据

       array_unshift($userName,‘胡心鹏‘);

 

       //在结尾插入数据

       array_push($userName,‘李炎恢‘);

      

 

       print_r($userName);

      

       //删除开头的元素

       array_shift($userName);

      

       //删除结尾的元素

      

       array_pop($userName);

      

       print_r($userName);

      

      

      

 

?>

 

<?php

 

       $fruit = array(‘banner‘,‘orange‘,‘apple‘);

 

      

       //这个函数用来获取一个数组中的键(key)

       //第二个参数表明随即获取几个

       $a = array_rand($fruit,2);

      

      

       echo $fruit[$a[0]];

       echo $fruit[$a[1]];

 

?>

 

 

 

目录

<?php

       $path = ‘C:\AppServ\www\Basic6\Demo1.php‘;

$array_path = pathinfo($path);

      

       echo $array_path[‘dirname‘]; //这个打印出的是目录

      

       echo $array_path[‘basename‘]; //这个打印出的是文件名

?>

 

 

<?php

 

       //打开一个文件

 

       //第一参数表明哪个文件,第二参数表明模式,w只写

       //w如果,file.txt已经有了,并且有数据了。那么,删除这个文件,重新创建

       //如果没有file.txt这个文件,那么,我就自行创建 

      

//     //fopen返回的是资源类型resource ,我们一般称它为句柄,或者叫资源句柄

//

//     $fp = fopen(‘file.txt‘,‘w‘);

//    

//     //想文件里写入一些数据

//    

//     $outstring = ‘This is a wq!He is 19‘;

//    

//     fwrite($fp,$outstring,strlen($outstring));

//    

//     //当打开一个文件的时候,习惯性的将它关闭掉

//     fclose($fp);

 

       //就只有一句话,不需要任何其他灵活的事情的事情使用

       //这个比较行,只有在PHP5的版本才可以使用,

       file_put_contents(‘file2.txt‘,‘This is a wq!‘);

 

 

?>

 

 

 

 

<?php

//     //file是按照每行来分组存放在一个数组中

//     $array_file = file(‘file.txt‘);

//    

//     //而这个打印出的是文件中的第五行。

//     echo $array_file[4];

       //readfile是将整个文件读出来,readfile本身能够直接输入浏览器,所以不需要echo

       //返回值是文件字节的总长度。

       //readfile(‘file.txt‘);

       //file_get_contents可以读入数据到缓冲区,然后通过echo来打印

       echo file_get_contents(‘file.txt‘);

?>

 

 

 

判断文件是否存在

<?php

 

       //比如读取一个文件的时候,你必须保证这个文件一定要存在,才可以操作

       //否则就报错,不让执行

       //这个时候就必要做一个检测

      

       //file_exists -- 检查文件或目录是否存在

 

       if (file_exists(‘file.txt‘)) {

              echo ‘执行各种各样的文本读写操作!‘;

       } else {

              echo ‘此本文不存在,请管理员在后台重新生成一下!‘;

       }

 

?>

 

 

 

<?php

 

       //标准函数,内置函数  两种加密函数

      

       echo md5(‘123456‘);

 

       echo ‘<br />‘;

      

       echo sha1(‘123456‘);

      

       echo ‘<hr />‘;

      

?>

 

//自定义函数

<?php

       //包含参数无返回值的函数

       //一般来说,写好的函数,就不用修改了,

       //变化的一般是传入进去的参数

       function functionArea($radius) {

              $area = $radius * $radius * pi();

              echo ‘半径为:‘.$radius.‘的面积为:‘.$area;

       }

       //调用

       functionArea(30);

?>

 

 

 

<?php

 

       //包含参数,有返回值

 

       function functionArea($radius) {

              $area = $radius * $radius * pi();

              return $area;

       }

      

       //调用

       //这样子大大提高了函数的灵活性

       // functionArea(20);整体就得到一个值,在内存里。

      

      

       echo ‘r为20的面积为:‘.functionArea(20);

?>

 

 

<?php

       //写一个函数,这里函数要返回三条数据

       //在函数里的变量,和函数外的变量没有任何联系,所以写重名,无所谓

       function functionInfo($name,$age,$job) {

              //$userInfo是个数组

              //$userInfo = array($name,$age,$job);

              $userInfo[] = $name;

              $userInfo[] = $age;

              $userInfo[] = $job;

              return $userInfo;

       }

       //调用函数

       list($name,$age,$job) = functionInfo(‘吴祁‘,19,‘学生‘);

      

       echo $name.‘今年‘.$age.‘岁了,他还是个‘.$job;

 

?>

 

 

<?php

 

       //之前的传参,都是按值传参

 

       $prices = 50;

       $tax = 0.5;

      

       //这个函数没有任何值出来,目前是按值传参

       //函数里的变量和函数外的变量没有任何关系

       function functionPrices(&$prices,$tax) {

              //里面的prices这个变量值已经是75

              $prices = $prices + $prices * $tax;

              $tax = $tax * $tax;      

              echo $prices; //75

              echo ‘<br />‘;

              echo $tax;

              echo ‘<br />‘;

              echo ‘<br />‘;

       }

      

       functionPrices($prices,$tax);

      

       //引用这个概念,我们目前无法掌握,会在OOP时候,重点讲解

       echo $prices;  //按值传50,按引用就变成75

       echo ‘<br />‘;

       echo $tax;

      

 

?>

 

 

 

<?php

       //了解全局变量

       //可以将$a设置成全局变量    

       $a = 5;

       function fa() {

              global $a; //将$a设置成为全局变量

              $a = 2;

       }

       fa();

       echo $a;

 

?>

 

 

<?php

       //使用超级全局变量

       $GLOBALS[‘a‘] = 5;

      

       function fa() {

              $GLOBALS[‘a‘] = 2;

       }

       fa();

       //echo $GLOBALS[‘a‘];

       print_r($GLOBALS);

      

?>