PHP中用$this传递对象

本文介绍了一个使用PHP面向对象编程的例子,展示了如何通过$this关键字传递对象并实现基于年龄判断发放不同工资的功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

微笑 相对于C和JAVA语言,PHP面向对象从底层就尽量的是程序员运用简单。今天来看一下PHP中用$this来传递对象的操作。下面写一个根据不同年龄发不同工资的类,这里处理年龄和工资的类为一个独立的业务模型。

===================》废话不多说,代码走你《================

<?php
header('content-type:text/html;charset=utf-8');
class Phper{
	private $age;
	private $sal;
	private $payoff;
	public function __construct(){//析构函数 
		$this->payoff=new Payoff();//实例化对象
	}
	public function getage(){
		return $this->age;
	}
	public function setage($age){
		$this->age=$age;
	}
	//得到工资
	public function getsal(){
		$this->sal=$this->payoff->figure($this);//结合下面的我通过$this传递对象
		return $this->sal;
	}
}
//下面是工资与年龄关系的类
class Payoff{
	public function figure($a){//结合上面的我通过$this传递对象
		$sal=0;
		$age=$a->getage();//调用Phper类中的方法
		if($age>80||$age<16){
			$sal=0;
		}elseif($age>50){
			$sal=200000;
		}else{
			$sal=18000;
		}
		return $sal;
	}
}
//实例化Phper
$phper=new Phper();
$phper->setage(23);
echo $phper->getage()."age,his sal is ".$phper->getsal()."¥";
echo "<br />";
$phper->setage(55);
echo $phper->getage()."age,his sal is ".$phper->getsal()."¥";
?>


可以通过以下步骤在HTML页面中使用PHP验证用户名是否重复: 1. 首先在HTML页面中添加一个输入框来输入用户名,并在输入框后面添加一个按钮,用于提交表单。 ```html <form method="post" action=""> <input type="text" name="username" id="username" placeholder="请输入用户名"> <button type="submit" name="check_username">检查用户名</button> </form> ``` 2. 在PHP中添加以下代码,用于验证用户名是否重复。这里使用MySQL数据库作为示例,假设已经建立了名为users的用户表。 ```php if(isset($_POST['check_username'])){ $username = $_POST['username']; $conn = mysqli_connect("localhost", "username", "password", "database_name"); //连接数据库 $query = "SELECT * FROM users WHERE username='$username'"; //查询语句 $result = mysqli_query($conn, $query); //执行查询语句 if(mysqli_num_rows($result) > 0){ //如果查询结果大于0,表示用户名已存在 echo "该用户名已存在,请重新输入!"; } else{ echo "该用户名可用!"; } } ``` 这里使用mysqli函数来连接MySQL数据库,并使用SELECT语句查询用户表中是否存在相同的用户名。如果查询结果大于0,表示用户名已存在,否则用户名可用。 3. 最后,在HTML页面中添加以下JavaScript代码,用于实现异步验证,即无需刷新页面即可检查用户名是否重复。 ```javascript <script> $(document).ready(function(){ $('#username').blur(function(){ var username = $(this).val(); $.ajax({ url:"check_username.php", method:"POST", data:{username:username}, success:function(data){ $('#username_result').html(data); } }); }); }); </script> <div id="username_result"></div> ``` 这里使用jQuery库来实现异步验证。当用户在输入框中输入用户名后,失去焦点时会触发blur事件,然后通过ajax方法将用户名传递给check_username.php文件进行验证,并将结果显示在页面上。最后,在页面中添加一个div元素用于显示验证结果。 通过以上步骤,就可以在HTML页面中使用PHP验证用户名是否重复了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值