php 10.2总

时间:2022-09-28 06:45:28
注意事项
获取表单信息

<?php
if($_POST["submit"]=="登录"){
echo "您输入的用户名为:".$_POST[user]."&nbsp;&nbsp;密码为:".$_POST[pwd];
}
?> number_format()函数对指定的数字字符串进行格式化 <?php
$number = 2668.746; //定义数字字符串常量
echo number_format($number); //输出1个参数格式化后的数字字符串
echo "<br>"; //执行换行
echo number_format($number, ); //输出2个参数格式化后的数字字符串
echo "<br>"; //执行换行
$number2 = 123456.7832; //定义数字字符串常量
echo number_format($number2, , '.', '.'); //输出4个参数格式化后的数字字符串
?> 显示2,
,668.75
123.456. <?php
echo strstr("明日编程词典网","编"); //输出查询的字符串
echo "<br>"; //执行换行
echo strstr("http://www.mrbccd.com","w"); //输出查询的字符串
echo "<br>"; //执行换行
echo strstr("0431-84978981",""); //输出查询的字符串
?>显示为 编程词典网
www.mrbccd.com strlen字符长度 获取字符长度 <?php
echo substr("www.mrbccd.com",); //从第0个字符开始截取
echo "<br>";
echo substr("www.mrbccd.com",,); //从第4个字符开始连续截取10个字符
echo "<br>";
echo substr("www.mrbccd.com",-,); //从倒数第4个开始截取4个字符
echo "<br>";
echo substr("www.mrbccd.com",,-); //从第一个字符开始截取,截取到倒数第4个字符
?> <?php
$str1="str2.jpg"; //定义字符串常量
$str2="str10.jpg"; //定义字符串常量
$str3="mrsoft1"; //定义字符串常量
$str4="MRSOFT2"; //定义字符串常量
echo strcmp($str1,$str2); //按字节进行比较,返回1
echo strcmp($str3,$str4); //按字节进行比较,返回1
echo strnatcmp($str1,$str2); //按自然排序法进行比较,返回-1
echo strnatcmp($str3,$str4); //按自然排序法进行比较,返回1
?> 显示11- <?php
$str = "select * from tb_book where bookname = 'PHP项目开发全程实录'";
$a = addslashes($str); //对字符串中的特殊字符进行转义
echo $a."<br>"; //输出转义后的字符
$b = stripslashes($a); //对转义后的字符进行还原
echo $b."<br>"; //将字符原义输出
?> <?php
$a="编程体验网"; //对指定范围内的字符进行转义
$b=addcslashes($a,"编程体验网"); //转义指定的字符串
echo "转义字符串:".$b; //输出转义后的字符串
echo "<br>"; //执行换行
$c=stripcslashes($b); //对转义的字符串进行还原
echo "还原字符串:".$c; //输出还原后的转义字符串
?> 显示结果 转义字符串:\\\\\\\\\\
还原字符串:编程体验网 时间打印<?php echo "<font color='#ffff00'>北京时间:". date("Y-m-d H:i:s ")."</font>" ?> 显示表单内容 <table width="" border="" align="center" cellpadding="" cellspacing=""> <tr> <td bgcolor="#669933" ><table width="" border="" align="center" cellpadding="" cellspacing=""> <tr> <td height="" colspan="" align="center" bgcolor="#FFFFFF"><span class="STYLE1">企业公告信息展示</span></td> </tr> <tr> <td width="" height="" align="center" bgcolor="#CCFF66">标题</td> <td width="" align="center" bgcolor="#CCFF66">内容</td> <td width="" align="center" bgcolor="#CCFF66">发布时间</td> </tr> <?php $conn=mysql_connect("localhost","root","root"); mysql_select_db("db_database04",$conn); mysql_query("set names gb2312"); $sql=mysql_query("select * from tb_person order by u_id desc",$conn); $info=mysql_fetch_array($sql); if($info==false){ echo "暂无图书信息!"; } else{ do{ ?> <tr> <td height="" align="center" bgcolor="#FFFFFF"><?php echo $info[p_title];?></td> <td height="" align="center" bgcolor="#FFFFFF"><?php echo $info[p_content];?></td> <td height="" align="center" bgcolor="#FFFFFF"><?php echo $info[p_time];?></td> </tr> <?php }while($info=mysql_fetch_array($sql)); } ?> </table></td> </tr> </table> 时间打印<?php echo "<font color='#ffff00'>北京时间:". date("Y-m-d H:i:s ")."</font>" ?> 显示表单内容 <table width="" border="" align="center" cellpadding="" cellspacing=""> <tr> <td bgcolor="#669933" ><table width="" border="" align="center" cellpadding="" cellspacing=""> <tr> <td height="" colspan="" align="center" bgcolor="#FFFFFF"><span class="STYLE1">企业公告信息展示</span></td> </tr> <tr> <td width="" height="" align="center" bgcolor="#CCFF66">标题</td> <td width="" align="center" bgcolor="#CCFF66">内容</td> <td width="" align="center" bgcolor="#CCFF66">发布时间</td> </tr> <?php $conn=mysql_connect("localhost","root","root"); mysql_select_db("db_database04",$conn); mysql_query("set names gb2312"); $sql=mysql_query("select * from tb_person order by u_id desc",$conn); $info=mysql_fetch_array($sql); if($info==false){ echo "暂无图书信息!"; } else{ do{ ?> <tr> <td height="" align="center" bgcolor="#FFFFFF"><?php echo $info[p_title];?></td> <td height="" align="center" bgcolor="#FFFFFF"><?php echo $info[p_content];?></td> <td height="" align="center" bgcolor="#FFFFFF"><?php echo $info[p_time];?></td> </tr> <?php }while($info=mysql_fetch_array($sql)); } ?> </table></td> </tr> </table> 使用include_once可以避免此错误,一般都_once用的比较多。应该根据实际情况需求include和_once的区别 include和require区别
当要包含的文件不存在时,include产生一个警告(Warning),该语句后面的程序会继续执行;而 require则导致一个致命错误(Fatal error),程序就此终止 require_once()和include_once()语句分别对应于require()和include()语句。require_once()和include_once()语句主要用于需要包含多个文件时,可以有效地避免把同一段代码包含进去而出现函数或变量重复定义的错误。 、这个方法是个替换字符串内字符的功能。
、这是个方法 如果你程序内没有调用这个方法 那么你删掉他当然没有影响。
、如果你调用了这个方法 并且你把这个方法删了 他会报错的 说找不到这个方法。如果没报错 可能是你把错误提示关闭了。
还有 如果在插入数据库之前你调用他 插入数据库的 $content 变量就是替换完的变量 如果没调用 或调用失败 那么插入数据库的就是 $content原来的内容。
你不注意的话是看不出来的。因为这个方法替换的只是几个不起眼的字符串或标签等。
function.php
<?php function unhtml($content) { $content=htmlspecialchars($content); $content=str_replace(chr(),"<br>",$content); $content=str_replace(chr(),"&nbsp;",$content); $content=str_replace("[_[","<",$content); $content=str_replace("]_]",">",$content); $content=str_replace("|_|"," ",$content); return trim($content);
}
?>

李炎恢PHP笔记2

<?php

include 'library/tool.library.php';

/表示只包含一次

include_once 'library/tool.library.php'; 

//     require_once('Demo1.php');

//     require_once('Demo1.php');

       //include 如果不存在,就告诉你两个警告,然后继续执行

       //require 如果不存在,就直接报错,然后停止执行

       require 'Demo111.php'

       //我们就推荐使用require  

       echo '<strong>这是Demo11.php</strong>'

?>

 <?php

       //这句话把函数库给包含进来

       include 'library/tool.library.php';

?> 

require_once('Demo1.php');

字符串

/清除空各

<?php

$str = '                         PHP                        ';

echo trim($str);

?>

<?php

       $str = "This is a Teacher!\nThis is a Student!";

       //但是,我现在想要在网页中实现换行

       //在回帖的时候,一个回车就是\n

       //我们通过函数来实现转换过程

       echo nl2br($str);

?>

<?php

//将字符串转换成大写
//echo strtoupper('yc60.com@gmail.com'); echo ucfirst('yc60.com@gmail.com'); ?> <?php //尝试着写第一个正则表达式 //第一个参数,表示模式,表示匹配模式(就是和字符串去比较、匹配)
//第二个参数,表示字符串 //如果整个函数模式和字符串比较后匹配了,那么返回真(true)1,否则返回假(false)0 //什么叫匹配,就是一个一个的比较过去 //按照什么规则??按照模式来匹配
//只要模式全部通过,那么就通过 //匹配和相等是两个概念 //因为目前的模式是一个整体,php
//所以,字符串只要有连在一起的php三个字符,不管怎样的字符串都能匹配 $mode = '/php/'; //规则模式
$string = 'sdlkfjwehsdlfkjpsdlfkjshersidjflkspdf'; //字符串 if (preg_match($mode,$string)) {
echo '匹配';
} else {
echo '不匹配';
} // if ('a'=='b') {
// echo '相等';
// } else {
// echo '不等';
// } ?> <?php //什么叫前导,前面的一个字符
//+号的前导字符就是h //h+的意思是,至少包含一个h
//+号的意思,是前导字符,一个或者多个 //h*的意思是,零个或者多个h
//*号虽然可以是零个,但是前导字符不能更改,更改了,就不匹配了 //h?的意思是,零个或者一个h
//?多个前导字符不行 //.的意思是,任意一个字符,所以,两个点,就是任意两个字符
//.*表示前导任意字符,并且零个或者多个 //p{3}表示,前导必须是3个
//p{3,5}表示,前导必须是3-5个
//p{3,}表示,前导至少3个p //$符号,一般加在模式的字符串尾巴上
//表示从尾巴开始匹配 //^表示,从开头进行匹配 //^和$一起用的,基本上不要用正则了,直接用==号即可 //|是一个条件选择符,如果有其中一个,即可匹配。 $mode = '/(This) (is) (a) (Teacher)/'; //规则模式
$string = 'This is a Teacher'; //字符串 if (preg_match($mode,$string)) {
echo '匹配';
} else {
echo '不匹配';
} ?> <?php //获取特定指定时间的时间戳
//这是当前的时间戳
//echo time();
//我要取得2008-08-08 08:08:08
$beijing2008 = mktime(,,,,,);
echo date('Y-m-d H:i:s',$beijing2008); ?> 判断时间 <?php //验证时间 //checkdate() 1.月份,2.日 3.年 //checkdate()判断这个日期是否是合法的日期, //不合法的日期,试一试 if (checkdate(,,)) { echo '这个日期是合法有效的'; } else { echo '这个日期是非法的'; } ?> <?php echo date('现在的日期是:Y-m-d H:i:sa'); ?> 自动跳转header('Location:Demo2.php'); <?php //开启缓冲 ob_start(); //重新导向一个URL //header() //header('Location:Demo2.php'); //上面这句代码可以自动跳转到你所想要的页面。 //header('Location:http://www.baidu.com'); //上面这句话自动跳转到百度上面去。 echo 'baidu.com'; header('Location:http://www.baidu.com'); //在执行header()函数,必须注意,之前不能有任何浏览器输出 ?> 提交表单的问题 <?php //设置编码 header('Content-Type: text/html; charset=gbk'); //设置页面编码 //第一步,先验证是否是Demo5.php提交过来 //直接是按钮点到我这里来的,那么就说明,其他超级全局变量都应该存在 //如果send是存在的,那么就说是点过来,否则,跳回到Demo5.php的页面 if (!isset($_POST['send']) || $_POST['send']!='提交') { header('Location:Demo5.php'); exit; //跳回去了,下面就不需要执行了,那么就exit; } //第二步,接收所有数据 $username = trim($_POST['username']); $password = $_POST['password']; $code = trim($_POST['code']); $email = trim($_POST['email']); $content = htmlspecialchars(trim($_POST['content'])); //用户名不能小于两位,不能大与10位 if (strlen($username) < || strlen($username) > ) { //使用JS来跳转,有提示的 echo "<script>alert('用户名不能小于两位或者大于10');history.back();</script>"; exit; } //密码不能小于六位 if (strlen($password) < ) { echo "<script>alert('密码不能小于六位');history.back();</script>"; exit; } //验证码必须是4位,必须是数字 if (strlen($code) != || !is_numeric($code)) { echo "<script>alert('验证码必须是4位并且是纯数字');history.back();</script>"; exit; } //验证电子邮件 if (!preg_match('/([\w\.]{2,255})@([\w\-]{1,255}).([a-z]{2,4})/',$email)) { echo "<script>alert('电子邮件不合法!');history.back();</script>"; exit; } echo '用户名:'.$username.'<br />'; echo '电子邮件:'.$email.'<br />'; echo '个人介绍:'.$content; ?> Cookie, <?php //创建一个Cookie, //Cookie是在你的客户机存一个小文件,这个文件包含你登录时的信息。 //setcookie可以创建一个客户机的cookie文件 //第一个参数表示cookie的名称,第二个参数表示这个cookie名称的值 //所谓的会话结束时,就是当你这个浏览器关闭时,就没有了,就自动删除 //创建一个包含过期时间的cookie,过期时间采用当前的时间戳+秒即可 //time()+(7*24*60*60)表示未来7天 //一旦setcookie改变了,一刷新浏览器,就会把旧的cookie覆盖掉 //setcookie('name','Lee',time()+(7*24*60*60)); setcookie('name','Lee'); ?> <?php setcookie('name2','WQ'); //读取本机的cookie,采用一个超级全局变量$_COOKIE //里面放cookie名即可 //有一个特性,setcookie并不是及时生成,它会慢一拍 //PS:慢一拍,第一次刷新,只是生成覆盖了原来。 //但获取的还是之前的,而第二次刷新,才能真正获取到。 // echo $_COOKIE['name']; //用变量检测函数来判读cookie是否存在 if (isset($_COOKIE['name3'])) { echo $_COOKIE['name3']; } else { echo '不存在此用户'; } ?> <?php //如果姓名和指定的姓名相同,那么就生成一个cookie //完成登录 if (isset($_POST['username']) && $_POST['username'] == 'Lee') { //如果正确了,我生成一个cookie,再跳转 setcookie('name','YanHuiLee'); header('Location:Demo8.php'); } else { header('Location:Demo6.php'); } ?> <?php if (isset($_COOKIE['name'])) { echo '欢迎光临:'.$_COOKIE['name']; } else { echo '非法登录'; } ?> <?php session_start(); //开始session会话处理 //session只要用到这个,就必须开启session_start() //放在文件开头 //创建session,直接采用超级全局变量赋值即可 //session是存在服务器端,一般存放1440秒, //如果网页没有任何操作,会自动销毁,当然,可以通过php.ini去修改保存时间 //如果关闭了浏览器,那么也自动销毁。 //及时性的,不像cookie会慢半拍 $_SESSION['name1'] = 'Lee1'; $_SESSION['name2'] = 'Lee2'; // if (isset($_SESSION['name'])) { // echo $_SESSION['name']; // } else { // echo '不存在此人'; // } // unset($_SESSION['name']); // // echo isset($_SESSION['name']); echo $_SESSION['name1']; echo $_SESSION['name2']; ?> <form enctype="multipart/form-data" action="Demo13.php" method="post"> <input type="hidden" name="MAX_FILE_SIZE" value="" /> 上传文件: <input type="file" name="userfile" /> <input type="submit" value="上传" /> </form> <?php header('Content-Type:text/html;charset=utf-8'); //第一步,连接到MySQL服务器 3306 //第一个参数,服务器地址,第二参数,服务器的用户名,第三个参数,服务器密码 //@如果出错了,不要出现警告或错误,直接忽略掉 //die函数之前,先连接一下,报错流程 // if (!$conn = @mysql_connect('localhost','root','yangfan')) { // echo '数据库连接失败,错误信息:'.mysql_error(); // exit; // } //常量参数 define('DB_HOST','localhost'); define('DB_USER','root'); define('DB_PWD','yangfan'); define('DB_NAME','school'); //第一步,连接数据库 $conn = @mysql_connect(DB_HOST,DB_USER,DB_PWD) or die('数据库连接失败,错误信息:'.mysql_error()); //第二步,选择指定的数据库,设置字符集 mysql_select_db(DB_NAME) or die('数据库错误,错误信息:'.mysql_error()); mysql_query('SET NAMES UTF8') or die('字符集设置错误'.mysql_error()); //第三步,从这个数据库里选一张表(grade),然后把这个表的数据库提出来(获取记录集) $query = "SELECT * FROM grade"; $result = @mysql_query($query) or die('SQL错误,错误信息'.mysql_error()); //$result就是记录集 //第四步,将记录集里的数据显示出来 print_r(mysql_fetch_array($result,MYSQL_ASSOC)); //第五步,释放记录集资源 mysql_free_result($result); //最后一步,关闭数据库 mysql_close() ?> //显示数据 $query = "SELECT id,name,email,regdate FROM grade"; $result = mysql_query($query) or die('SQL语句有误:'.mysql_error()); <?php //把结果集转换成的数组赋给$row,如果有数据,就为真 while (!!$row = mysql_fetch_array($result)) { echo $row['id'].'----'.$row['name'].'----'.$row['email']; echo '<br />'; } mysql_close(); ?>
Print 

Echo print 输出

转型

$sum=;

$total=(float)$sum

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

$echo intval$sum 浮点型

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

判断句

<?php

If ($userAge>){

Echo’内容’;}

?>

<?php

If ($userAge>){

Echo’内容’;}

Else{echo ‘wufawutian’};

?>

If ($userAge>){

Echo ’内容’;}

Elseif ($userAge>){

Echo ’内容’;}

Elseif ($userAge>){

Echo ’内容’;}

Else ($userAge>){

Echo ’内容’;}

}

<?php

       //多重线路,

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

       $weekday = ;

       switch ($weekday) {

              case :

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

                     break;

              case :

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

                     break;

              case :

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

                     break;

              default:

                     echo '无聊在家!';      

       }

<?php

       //while循环

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

       $a = ;

       while ($a > ) {

              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 = ;$i <= ; $i++) {

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

              if ($i == ) {

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

              }

              echo $i.'<br />';

       }

?>

<?php

       //do while

       $a = ;

       do {

              echo $a;

              $a--;

              echo '<br />';

       } while ($a>)

?>

       //do while

       $a = ;

       do {

              echo $a;

              $a--;

              echo '<br />';

       } while ($a>)

?>

       //do while

       $a = ;

       do {

              echo $a;

              $a--;

              echo '<br />';

       } while ($a>)

?>

<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[] = '李炎恢';

       echo $userNames[];

       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[];

?>

?>

统计数据

<?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'=>'马云',''=>'周鸿祎'); //print_r($userNames); echo $userNames['baidu']; echo $userNames['']; ?> <?php //先创建只有一个元素的数组 $userAges = array('吴祁'=>); //打印出吴祁的年龄 // echo $userAges['吴祁']; //将以前的数组,追加两条,这里说的下标,键,key是一个东西 $userAges['李炎恢'] = ; $userAges['胡心鹏'] = ; // echo $userAges['李炎恢']; print_r($userAges); ?> <?php // $userAges['吴祁'] = 19; // $userAges['李炎恢'] = 27; // $userAges['胡心鹏'] = 23; $userAges = array('吴祁'=>,'李炎恢'=>,'胡心鹏'=>); //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('苹果',,28.8), array('猪肉',,32.1), array('饼干',,45.3) ); //print_r($products); //将$products第一条元素取出来 //数组里的数组 echo "|".$products[][]."|".$products[][]."|".$products[][]."|<br />"; echo "|".$products[][]."|".$products[][]."|".$products[][]."|<br />"; echo "|".$products[][]."|".$products[][]."|".$products[][]."|<br />"; ?> <?php //创建一个单一的数组 $products = array( array('产品名'=>'苹果','数量'=>,'价格'=>28.8), array('产品名'=>'猪肉','数量'=>,'价格'=>32.1), array('产品名'=>'饼干','数量'=>,'价格'=>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=;$i<count($products);$i++) { while (!!list($key,$value) = each($products[$i])) { echo $key.'--'.$value.'|'; } echo '<br />'; } ?> 数组排序 <?php $numbers = array(,,,,,,,,); rsort($numbers); print_r($numbers); ?> <?php $fruit = array('c'=>'banner','a'=>'orange','b'=>'apple'); //按照键(key)名排序 krsort($fruit); print_r($fruit); ?> <?php // echo '<img src="data: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=;$i<;$i++) { echo '<img src="data: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,); echo $fruit[$a[]]; echo $fruit[$a[]]; ?> 目录 <?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(''); echo '<br />'; echo sha1(''); echo '<hr />'; ?> //自定义函数 <?php //包含参数无返回值的函数 //一般来说,写好的函数,就不用修改了, //变化的一般是传入进去的参数 function functionArea($radius) { $area = $radius * $radius * pi(); echo '半径为:'.$radius.'的面积为:'.$area; } //调用 functionArea(); ?> <?php //包含参数,有返回值 function functionArea($radius) { $area = $radius * $radius * pi(); return $area; } //调用 //这样子大大提高了函数的灵活性 // functionArea(20);整体就得到一个值,在内存里。 echo 'r为20的面积为:'.functionArea(); ?> <?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('吴祁',,'学生'); echo $name.'今年'.$age.'岁了,他还是个'.$job; ?> <?php //之前的传参,都是按值传参 $prices = ; $tax = 0.5; //这个函数没有任何值出来,目前是按值传参 //函数里的变量和函数外的变量没有任何关系 function functionPrices(&$prices,$tax) { //里面的prices这个变量值已经是75 $prices = $prices + $prices * $tax; $tax = $tax * $tax; echo $prices; // echo '<br />'; echo $tax; echo '<br />'; echo '<br />'; } functionPrices($prices,$tax); //引用这个概念,我们目前无法掌握,会在OOP时候,重点讲解 echo $prices; //按值传50,按引用就变成75 echo '<br />'; echo $tax; ?> <?php //了解全局变量 //可以将$a设置成全局变量 $a = ; function fa() { global $a; //将$a设置成为全局变量 $a = ; } fa(); echo $a; ?> <?php //使用超级全局变量 $GLOBALS['a'] = ; function fa() { $GLOBALS['a'] = ; } fa(); //echo $GLOBALS['a']; print_r($GLOBALS); ?>