【问题标题】:Object oriented php class simple example面向对象的php类简单例子
【发布时间】:2014-01-03 10:26:07
【问题描述】:

我是 php 的初学者,所以现在我尝试学习面向对象,我一直在寻找,我得到了一些想法,但概念不清楚。所以我来到了那里。请任何 php 大师给出如何创建类和如何调用的简单示例在其他 php 页面上。

例如

我想要两个类,一个是show name,第二个是enter name。第一类显示名称,该名称来自数据库,第二类将名称放入数据库。

Index.php

<form action="checking.php" method="post">
      <input type="text" placeholder="Please enter name">
</form>

【问题讨论】:

  • 你不需要两个类,你只需要两个方法,一个是添加数据,另一个是从数据库中获取数据..
  • 为此使用 setter 和 getter 属性。
  • @DipeshParmar 是的,你说得对,我需要一堂课,谢谢你的建议。
  • What is a class in PHP?的可能重复

标签: php oop


【解决方案1】:

您调用 php 页面的方式很好。那是来自 HTML。

我想,你搞错了。一个类showName 用于从数据库中获取名称,enterName 用于保存在数据库中。好吧,我建议应该是一个类中的一个函数。

<?php
class Name
{
    public $name;
    public function showName()
    {
        /**
        Put your database code here to extract from database.
        **/
        return($this->name);
    }
    public function enterName($TName)
    {
        $this->name = $TName;
        /**
        Put your database code here.
        **/
    }
}
?>

checking.php 中,您可以包括:

<?php
    include_once("name_class.php");
    $name = $_POST['name'];   //add name attribute to input tag in HTML
    $myName = new Name();
    $myName->enterName($name); //to save in database/
    $name=$myName->showName(); //to retrieve from database. 
?>

这样就可以实现,这只是一个概述。远不止这些。

【讨论】:

  • 我认为您的代码有错误。您不能将$ 放在$this-&gt; 之后,因为它会引发PHP 异常。见行this-&gt;$name = $TName;
【解决方案2】:

你必须创建一个类人和两个方法..

class Person{
    public $name;
        public function showName()
        {
             echo $this->name;
        }

        public function enterName()
        {
             //insert name into database
        }
}

【讨论】:

  • 您不应该在方法中“回显”。只需“返回”并让此类的用户决定他想对给定数据做什么。
  • @MischaBehrend,回报很好。但是这个方法不是getName()。获取/设置 getter/setter 会很好.. 无论如何感谢您在两年后对这个答案的兴趣。
猜你喜欢
  • 2013-12-24
  • 1970-01-01
  • 2023-03-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-12-14
  • 2020-06-12
相关资源
最近更新 更多