吾爱乐享
个人学习网站

php学习之php的预定义常量的使用

说明:常量一旦定义,里面的值和常量是不能改变和销毁的,而且常量名不能重复

1.常量的定义:

语法:define(常量名,常量值); 不能定义复合数据

  • 5.x php版本:const来定义复合的数据,如数组
  • 7.0 php版本:define可以定义复合的数据.如:define(ARR,[1,2,3,4,5]);

2 访问常量

说明:直接使用常量名就可以了.。如:echo NAME;

常量的使用:网站的配置文件中使用。如:当前网站路径

3.魔术常量—预定义常量

  • __LINE__:文件中的当前行号
  • __FILE__:文件的完整路径和文件名,如果用在被包含的文件中,则返回被办好的文件名,自php4.0.2起,__FILE__总是包含一个绝对路径.如果是符号连接,则是解析后的绝对路径,而在此前的版本有时会包含一个相对路径
  • __DIR__:文件所在目录。如果用在被包括文件中,则返回被包括的文件所在目录,它等价于dimame(__FILE__)除非是i根目录。赋值目录中名不包括末尾斜杠
  • __FUNCTION__:函数名称,php4.3.0新增,php5起本常量返回该函数被定义时的名字(区分大小写)在php4中该值总是小写
  • __CLASS__:类的名称
  • __TRAIT__:trait的名称
  • __METHOD__:类的方法名
  • __NAMESPACE__:当前命名空间的名称

mvc:URL传递数据: index.php:c=getuser&a=xxxx&m=index

产生随机数的函数:rand()

说明:rand:产生一个随机整数

int rand(void)

int rand(int $min, int $max)

<?php

/**
* @Author: admin
* @Date: 2018-08-12 22:56:43
* @Last Modified by: admin
* @Last Modified time: 2018-08-12 23:39:54
*/
//常量的定义
define('NAME','张三');
define('PI',3.14);
echo NAME,PI;
const USER='admin';
echo USER;
//__CLASS__:获取当前类名
class getuser{
function index(){
include './xx/index.html';
}
function add(){
include './xxx/index.html';
}
}
//rand()随机函数
$num=rand(1,100);//随机生成1-100的整数
echo $num;

题:

  1. 变量处理常用的函数有哪些? 举例说出至少四个,并各举一个案例说明
  2. unset如何在函数内部就销毁一个全局变量,请使用的代码来说明如何销毁
  3. PHP基本数据类型的值传递和引用传递的区别是什么,请画出对应的内存示意图
  4. 一个页面server.php,并输出至少5个$_SERVER内的元素信息,并说明是什么含义,页面表现形式如下:
元素名称 使用形式 结果 含义
PHP_SELF $_SERVER[‘PHP_SELF’] /test/$_SERVER.php 表示本网页路径
       
       
       
       

参考:PHP手册〉语言参考〉预定义变量〉$_SERVER

5.写一个表单,用来填写“用户信息”,要求出现所有的表单元素类型(除文件类型):

文本框,密码框,单选,复选,下拉,多行文本域,隐藏域

提交后显示用户所填写的所有数据。
复选框的问题:都一个name值,复选框name是一个,问:怎么实现获取多个选项的值

答案:

1.变量常用的函数:

isset():案例:$user=isset($_GET[‘user’])?$_GET[‘user’]:”;//判断是否存在

unset():案例:$a=1; unset($a);//销毁变量a

empty():案例:$a=1;if(empty($a)){echo “存在”};//判断是否为空

echo:案例:$a=1;echo $a;//打印a

var_dump():案例:$a=1; var_dump($a);//打印a

2.用unset销毁在函数中的全局变量

//只销毁局部变量
$a=1;
function demo(){
global $a;//把全局变量局部声明
echo $a;
unset($a);//销毁变量a
echo $a;
}
demo();//变量a被销毁
echo $a;//a的值存在正常打印
//销毁全局变量
function un(){
	global $a;//声明局部变量
	unset($GLOBALS['a']);
	//echo $a;
}
un();
echo $a;//a的值没有了

3.值传递和引用传递的区别

值传递,传递过去的是数值,

引用传递,传递的是地址值

4.新建一个server.php

<?php

/**
* @Author: admin
* @Date: 2018-08-13 00:03:26
* @Last Modified by: admin
* @Last Modified time: 2018-08-13 01:13:03
*/
$arrayName = array('REQUEST_URI','SCRIPT_NAME','PHP_SELF','SERVER_ADMIN','SCRIPT_FILENAME');
$arr2=array('URI 用来指定要访问的页面','包含当前脚本的路径','当前执行脚本的文件名',' Apache 服务器配置','当前执行脚本的绝对路径');
echo "<table border=1>";
echo '<tr>';
echo '<th>元素名称</th><th>使用形式</th><th>结果</th><th>含义</th>';
echo '</tr>';
foreach ($arrayName as $key => $value) {

echo '<tr>';
echo '<td>'.$value.'</td>';
echo "<td>\$_SERVER['$value']</td>";
echo "<td>".$_SERVER[$value]."</td>";
echo '<td>'.$arr2[$key].'</td>';
echo '</tr>';
}
echo '</table>';

5.答案

<?php

/**
* @Author: admin
* @Date: 2018-08-13 01:15:48
* @Last Modified by: admin
* @Last Modified time: 2018-08-13 02:07:11
*/
//获取表单信息
$user=$_REQUEST['user'];
$pass=$_REQUEST['pass'];
$sex=$_REQUEST['sex'];
$aihao=$_REQUEST['aihao'];
$xueli=$_REQUEST['xueli'];
$jieshao=$_REQUEST['jieshao'];
$id=$_REQUEST['id'];

?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<form action="" method="post">
用户名:<input type="text" name="user"><br>
密码:<input type="password" name = "pass"><br>
性别:<input type="radio" name = "sex" value="男"> 男
<input type="radio" name = "sex" value="女">女 <br>
爱好:<input type="checkbox" name = "aihao[]" value="篮球">篮球
<input type="checkbox" name = "aihao[]" value="学习">学习
<input type="checkbox" name = "aihao[]" value="php">php
<input type="checkbox" name = "aihao[]" value="编程">编程<br>
学历:<select name= "xueli">
<option value="小学">小学</option>
<option value="中学">中学</option>
<option value="大学">大学</option>
</select><br>
介绍:<input type="textarea" name = "jieshao" ><br>
<input type="hidden" name ="id" value="1">
<input type="submit" value="提交">
</form>
<table border="1">
<tr>
<td>用户名</td>
<td><?php echo $user;?></td>
</tr>
<tr>
<td>密码</td>
<td><?php echo $pass;?></td>
</tr>
<td>性别</td>
<td><?php echo $sex;?></td>>
</tr>
<tr>
<td>爱好</td>
<td><?php echo $aihao;?></td>
</tr>
<tr>
<td>学历</td>
<td><?php echo $xueli;?></td>
</tr>
<tr>
<td>介绍</td>
<td><?php echo $jieshao;?></td>
</tr>
<tr>
<td>id</td>
<td><?php echo $id;?></td>
</tr>

</table>
</body>
</html>

赞(0) 打赏
未经允许不得转载:吾爱乐享 » php学习之php的预定义常量的使用

评论 抢沙发

评论前必须登录!

 

推荐免费资源共享,个人经验总结学习

联系我们联系我们

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏