本文目录一览:
- 1、php 类怎么写
- 2、使用PHP写一个类和一个控制器
- 3、php 如何写类
- 4、php类怎么写?
- 5、php 类的写法
- 6、如何在PHP中定义一个类
php 类怎么写
class save_reg{
private $usernc;
private $userpwd;
private $phone;
private $email;
public function __construct($username,$userpwd,$phone,$email)
{
$this-usernc=$username;
$this-userpwd=$userpwd;
$this-phone=$phone;
$this-email=$email;
}
public function savereg(){
$conn=mysql_connect("localhost","root","123456");
$sql=mysql_selectdb("select",$conn);
mysql_query("set names gb2312");
if ($_POST[button]==TRUE) {
if ($conn$sql)
{
if(!($_POST[usernc] and $_POST[pwd]))
{
echo "用户名或密码不能为空。单击a href='javascript:onclick=history.go(-1)'这里/a返回"."br";
}
else {
echo "数据库连接成功!"."br";
echo "数据库选择成功!"."br";
$relest=mysql_query("select username from student where username='".$this-usernc."'",$conn);
if (mysql_fetch_array($relest))
{
echo "scriptalert('该用户名已被占用!');history.back();/script";
exit;
}
else
{
if (mysql_query("insert into student (username,userpwd,phone,email ) values ('".$this-usernc."','".$this-userpwd."','".$this-phone."','".$this-email."')",$conn))
{
mysql_free_result($relest);
mysql_close($conn);
echo "scriptalert('添加成功!');history.back();/script";
}
}
}}}
使用PHP写一个类和一个控制器
?php
/**
*以下代码用于数据库操作类的封装
*
* @author rexrex.sp.li@aliyun.com
* @version 1.0
* @since 2015
*/
class Mysql{
//数据库连接返回值
private $conn;
/**
* [构造函数,返回值给$conn]
* @param [string] $hostname [主机名]
* @param [string] $username[用户名]
* @param [string] $password[密码]
* @param [string] $dbname[数据库名]
* @param [string] $charset[字符集]
* @return [null]
*/
function __construct($hostname,$username,$password,$dbname,$charset='utf8'){
$conn = @mysql_connect($hostname,$username,$password);
if(!$conn){
echo '连接失败,请联系管理员';
exit;
}
$this-conn = $conn;
$res = mysql_select_db($dbname);
if(!$res){
echo '连接失败,请联系管理员';
exit;
}
mysql_set_charset($charset);
}
function __destruct(){
mysql_close();
}
/**
* [getAll 获取所有信息]
* @param [string] $sql [sql语句]
* @return [array] [返回二维数组]
*/
function getAll($sql){
$result = mysql_query($sql,$this-conn);
$data = array();
if($result mysql_num_rows($result)0){
while($row = mysql_fetch_assoc($result)){
$data[] = $row;
}
}
return $data;
}
/**
* [getOne 获取单条数据]
* @param [string] $sql [sql语句]
* @return [array] [返回一维数组]
*/
function getOne($sql){
$result = mysql_query($sql,$this-conn);
$data = array();
if($result mysql_num_rows($result)0){
$data = mysql_fetch_assoc($result);
}
return $data;
}
/**
* [getOne 获取单条数据]
* @param [string] $table [表名]
* @param [string] $data [由字段名当键,属性当键值的一维数组]
* @return [type] [返回false或者插入数据的id]
*/
function insert($table,$data){
$str = '';
$str .="INSERT INTO `$table` ";
$str .="(`".implode("`,`",array_keys($data))."`) ";
$str .=" VALUES ";
$str .= "('".implode("','",$data)."')";
$res = mysql_query($str,$this-conn);
if($res mysql_affected_rows()0){
return mysql_insert_id();
}else{
return false;
}
}
/**
* [update 更新数据库]
* @param [string] $table [表名]
* @param [array] $data [更新的数据,由字段名当键,属性当键值的一维数组]
* @param [string] $where [条件,‘字段名’=‘字段属性’]
* @return [type] [更新成功返回影响的行数,更新失败返回false]
*/
function update($table,$data,$where){
$sql = 'UPDATE '.$table.' SET ';
foreach($data as $key = $value){
$sql .= "`{$key}`='{$value}',";
}
$sql = rtrim($sql,',');
$sql .= " WHERE $where";
$res = mysql_query($sql,$this-conn);
if($res mysql_affected_rows()){
return mysql_affected_rows();
}else{
return false;
}
}
/**
* [delete 删除数据]
* @param [string] $table [表名]
* @param [string] $where [条件,‘字段名’=‘字段属性’]
* @return [type] [成功返回影响的行数,失败返回false]
*/
function del($table,$where){
$sql = "DELETE FROM `{$table}` WHERE {$where}";
$res = mysql_query($sql,$this-conn);
if($res mysql_affected_rows()){
return mysql_affected_rows();
}else{
return false;
}
}
}
实例化类:
?php
//包含数据库操作类文件
include 'mysql.class.php';
//设置传入参数
$hostname='localhost';
$username='root';
$password='123456';
$dbname='aisi';
$charset = 'utf8';
//实例化对象
$db = new Mysql($hostname,$username,$password,$dbname);
//获取一条数据
$sql = "SELECT count(as_article_id) as count FROM as_article where as_article_type_id=1";
$count = $db-getOne($sql);
//获取多条数据
$sql = "SELECT * FROM as_article where as_article_type_id=1 order by as_article_addtime desc limit $start,$limit";
$service = $db-getAll($sql);
//插入数据
$arr = array(
'as_article_title'='数据库操作类',
'as_article_author'='rex',
);
$res = $db-insert('as_article',$arr);
//更新数据
$arr = array(
'as_article_title'='实例化对象',
'as_article_author'='Lee',
);
$where = "as_article_id=1";
$res = $db-update('as_article',$arr,$where);
//删除数据
$where = "as_article_id=1";
$res = $db-del('as_article',$where);
?
getOne方法传入$sql的sql语句用于查询单条数据并返回一维数组;getAll方法同样传入sql语句,用于查询多条数据,并返回二维数组;insert方法传入表名和关联数组,返回boolen型或者插入数据对应索引;update方法传入表名、关联数组和条件,返回boolen或者影响的行数;del方法传入表名和条件,返回boolen型。
php 如何写类
面相对象编程
class a{
类成员var $aaa
function b($abc){类方法
$this-aaa=$abc;
}
}
$c =new a();调用类
echo $c-b("方法");方法
php类怎么写?
?php
class ClassName {
public $name = 'ClassName';
protected $_version = '1.0';
private $_author = 'incNick';
public function a(){}
protected function _b() {}
private function _c() {}
}
class Children extends ClassName {
}
var 是php4中的用法,相当于public,php4中不支持protected等
public关键字:公共访问的属性、方法
protected关键字:类及子类内公共访问的属性、方法
private关键字:当前类内私有的属性、方法
final关键字:最终的,子类中不允许覆盖。如果是final class,该类不可被继承。
static关键字:静态属性、方法,如public static $abc
const关键字:常量属性,如const ABC = 'test'
更多个解释看手册吧亲,实在太多了
php 类的写法
部分同意楼上的,不知道2300380用的是什么语言-_-!!!
PHP字符串链接用的是.
PHP可以用VAR声明变量(仅在类中,相当于public,高版本的PHP,老版的只有用VAR声明)
代码过程基本就是一楼写的,改进一下
class daxiang{
var $name="";
function zou($name)
{
$this-name=$name;
echo("大象"+$this-name+"在走路");
}
}
"this"是PHP中特有的一个特殊对象,你可以在PHP的类的程序中大量的看到,它指“自已”这个对象。
如何在PHP中定义一个类
当你声明一个类,你需要列出对象应有的所有变量和所有函数?被称为属性和方法图1中显示了一个类的构成. 注意在大括号({})内你只能声明变量或者函数. 图2中显示了如何在一个类中定义三个属性和两个方法.
以下为引用的内容:
class Name extends Another Class
{
Access Variable Declaration
Access Function Declaration
}
name = $name;
$this-password = $password;
$this-lastLogin = time();
$this-accesses++;
}
// 获取最后访问的时间
function getLastLogin()
{
return(date("M d Y", $this-lastLogin));
}
}
//创建一个对象的实例
$user = new User("Leon", "sdf123");
//获取最后访问的时间
print($user-getLastLogin() ."\n");
//打印用户名
print("$user-name\n");
?
当你声明属性,你不需要指明数据类型. 变量可能是整型,字符串或者是另一个对象,这取决于实际情况.在声明属性时增加注释是一个好主意,标记上属性的含义和数据类型.
当你声明一个方法,你所做的和在类外部定义一个函数是一样的. 方法和属性都有各自的命名空间. 这意味着你可以安全地建立一个与类外部函数同名的方法,两者不会冲突. 例如,一个类中可以定义一个名为date()的方法. 但是你不能将一个方法命名为PHP的关键字,如for或者while.
类方法可能包含PHP中所谓的type hint. Type hint 是另一个传递参数给方法的类的名字. 如果你的脚本调用方法并传递一个不是类的实例的变量,PHP将产生一个”致命(fatal)错误” . 你可能没有给其它类型给出type hint,就像整型,字符串,或者布尔值. 在书写的时候, type hint是否应当包含数组类型仍存在争议.
Type hint是测试函数参数或者运算符的实例的数据类型的捷径. 你可能总是返回这个方法. 确认你强制让一个参数必须是哪种数据类型,如整型. 图3 确保编译类只产生Widget的实例
以下为引用的内容:
<?php
//组件
class Widget
{
public $name='none';
public $created=FALSE;
}
//装配器
class Assembler
{
public function make(Widget $w)
{
print("Making $w-name\n");
$w-created=TRUE;
}
}
//建立一个组件对象
$thing = new Widget;
$thing-name = 'Gadget';
//装配组件
Assembler::make($thing);
?>
除了传递参数的变量外,方法含有一个特殊的变量. 它代表类的个别实例. 你应当用这个来指向对象的属性和其它方法.一些面向对象的语言假设一个不合格的变量提交给本地属性,但在PHP中方法的任何变量只是在方法的一定范围内. 注意在User类的构造函数中这个变量的使用图2.