Ten minutes To PHP Objects
Written by Mike James   
Thursday, 18 November 2021
Article Index
Ten minutes To PHP Objects
Methods
Inheritance
Buttons

Finally all we need is a method to generate the appropriate HTML:

public function output()
{
 for($y=1;$y<=$this->ver;$y++)
 {
 for($x=1;$x<=$this->hor;$x++)
  {
 print "<input type=button ";
  print "value=".$this->names[$x][$y]." ";
  print "name=B".$y.$x.">\n";
  }
  print "\n<br>\n";
 }
}

The only complicated part of this method is the print statement which builds up an HTML tag something like:

<input type=button value=caption 
name= Browcolumn>

where caption is the value stored in the appropriate location of the $names array and rowcolumn is simply the row and column number that the button is in.

For example, the first button is:

<input type=button value=caption name= B11>

then:

<input type=button value=caption name= B12>

and so on.
If you enter all of this code into the file “buttonpad.inc” you can make use of it in a PHP page using something like:

<?php
include("buttonpad.inc");
?>
<html>
<head>
<title>Buttons demo</title>
</head>
<body>
<?php
$pad=new buttonpad(3,3);
$pad->SetSequentialLabels();
$pad->output();?>
</body>
</html>

Notice that the “include” has to be the first item in the page and that the included file has to start with <?php and end with >>. This might look complicated by notice that the PHP program is just:

$pad=new buttonpad(3,3);
$pad->SetSequentialLabels();
$pad->output();

and this generates a 3x3 labelled grid of buttons.

 

buttons

A button grid generated by a PHP class

 

Of course there are lots of big and small improvements you can make to the class. For example, it seems to make sense to allocate a default labelling for the buttons and this can be best done in the constructor:

public function __constructor($n,$m)
{
$this->hor=$n;
$this->ver=$m;
$this->SetSequentialLabels();
}

It is very easy to create PHP classes that make use of state or session information. This makes it possible to take an object-oriented approach to problems such as user tracking - simply define a User class and create an instance for each user. In the same way you could build a shopping system based on a shopping cart class and so on. And when it comes to database manipulation, objects were just made for the job! The point is that there are times when an object-oriented approach really is justified and other times when you are probably better off just writing PHP script functions.

To access the final example as a php program file,  once you have registered,  click on CodeBin.

If you would like to know more about using objects to generate HTML see:

Object-oriented HTML generation

 

Introduction to PHP

phpcover

Contents

  1. Getting started
    Getting Started With NetBeans PHP - Local Projects
  2. What PHP Does
  3. PHP Variables and Expressions for Complete Beginners
  4. PHP Control Structures 1 - if and else
  5. PHP Control Structures 2 - switch and elseif
  6. PHP loops
  7. Advanced loops
  8. Functions
  9. Ten minutes to PHP objects
  10. PHP Inner Functions And Closure
  11. NetBeans Remote Projects and debugging

To be informed about new articles on I Programmer, sign up for our weekly newsletter, subscribe to the RSS feed and follow us on Twitter, Facebook or Linkedin.

Banner


PHP Inner Functions And Closure

PHP inner functions and anonymous functions are a little strange to say the least. However, just because something is strange doesn't mean that it isn't useful. We take a close look at the way PHP fun [ ... ]



Ten Minutes to PHP

Want to get started with PHP but never found the time? Now you can write your first program in around ten minutes and understand where to go next.


Other Articles

    raspberry pi books

     

    Comments




    or email your comment to: comments@i-programmer.info

    <ASIN:1449392776>

    <ASIN:0994346980>

    <ASIN:0596006306>

     



    Last Updated ( Thursday, 18 November 2021 )