Updated March 23, 2023
Introduction to Public Function in PHP
Like many other object oriented programming languages, PHP also has a way to indicate the function’s accessibility inside the program. Public, protected and private are the keywords used, where public is for indicating that the function is accessible globally in a certain PHP program. There are many advantages in declaring a function as public, and one such advantage is that the function can be called and used anywhere in the program without any restrictions.
How Public Function Works in PHP?
Public function works without any restrictions. Public functions works outside of the class, inside of the class within the programming code in PHP and in some other programming languages too. Public function/functions make the whole content in its class make available to the other class only when it is accessed. Even though it is a public function but it does nothing if not accessed. PHP Public function works/ implements nothing without accessing it in other classes/ within the class.
Examples to Implement Public Function in PHP
Here are some of the examples to implement public function which are given below:
Example #1
This is the example of a public function/modifier. See how it works with the well-illustrated example below:
Code:
<?php
// BaseClass
class publ {
public $tagging_line = "Scientists & Engineers are the real Geeks";
function display() {
echo $this->tagging_line."\n";
}
}
// SubClass
class subc extends publ {
function show(){
echo $this->tagging_line;
}
}
// Object Declaration
$obj= new subc;
// Scientists & Engineers are the real Geeks!
echo $obj->tagging_line."\n";
// Scientists & Engineers are the real Geeks!
$obj->display();
// Scientists & Engineers are the real Geeks!
$obj->show();
?>
Output:
Example #2
This is an example of accessing the public content from inside the class and from outside of the class. Check it below with syntax listed.
Code:
<?php
class Itemone
{
/**
* This is the INSIDE PROGRAMMING CODE because it is actually written INSIDE of the class.
*/
public $labelone;
public $priceone;
}
/**
* This is OUTSIDE PROGRAMMING CODE because it is actually written OUTSIDE of the class.
*/
$item = new Itemone();
$item->labelone = ' Phantam Drone - Mavic Pro ';
$item->priceone = 250.99;
echo $item->labelone;
/**
* Printing your variable value which contains string. $item is the public function variable declaration to store values accessing from Item function
*/
echo $item->priceone;
?>
Output:
Example #3
This is another example. Actually the syntax also included protected variables for getting a better idea of the program.
Code:
<?php
class Itemone
{
/**
* Here's the new INSIDE PROGRAMMING CODE and the Rules Which are to follow:
*
* 1. It will STOP ACCESS to the properties of it via $itemone->labelone and $itemone >priceone,
* with the help of the protected keyword.
* 2. FORCING the use of the public functions in the code.
* 3. The ONLY strings are now allowed OUT & IN of this class/classes for $labelone
* with the help of the getLabelone and setLabelone functions.
* 4. In OUT & IN of the class only floats are allowed now for $priceone
* by using getPriceone and setPriceone functions.
*/
protected $labelone = 'Unknown ItemONE'; // Rule 1 - protected Variable.
protected $priceone = 0.0; // Rule 1 - protected Variable.
public function getLabelone() { // Rule 2 - public function declaration.
return $this->labelone; // Rule 3 - string OUT for $labelone.
}
public function getPriceone() { // Rule 2 - public function declaration for Priceone.
return $this->priceone; // Rule 4 - The float OUT for $priceone.
}
public function setLabelone($labelone) // Rule 2 - public function declaration.
{
/**
* Make sure $labelone is a PHP string that can be used in a SORTING
* alogorithm, number, array, NOT a boolean or the object that can't be
* properly sorted -- AND to make sure that the getLabelone() function
* ALWAYS returns PHP string which is genuine.
*
* Using a RegExp would now improve this function, however, the main
* point is the one made above.
*/
if(is_string($labelone))
{
$this->labelone = (string)$labelone; // Rule 3 - string IN for $label.
}
}
public function setPriceone($priceone) // Rule 2 - public function.
{
/**
* Make sure $priceone is a PHP float value so that it can be used in a particular
* NUMERICAL CALCULATION. Do not accept string, array, boolean or
* some of the other object/objects that can't be included in a simple calculation.
* Now This will ensure that the getPriceone() function will ALWAYS returns
* genuine, authentic and also full-flavored PHP's number and nothing but.
*
* Checking the positive values may/might improve this one function,
* however, the main point is the one made above.
*/
if(is_numeric($priceone))
{
$this->priceone = (float)$priceone; // Rule 4 - float IN for $price.
}
}
}
?>
Advantages
Here are some advantages of public function which are explained below:
- It can be accessed anywhere in the whole program/project. What I mean is the Pubic method of a class or public function in PHP can call outside or inside of the class or in a subclass.
- It can be accessed outside of the class as well as inside of the class from another class too.
- This public makes accessing function is without any restriction. It is like a public property of a particular object. You can modify or retrieve it from anywhere inside of the program.
- Public Function will show/provide the full intent of the code.
- Visibility is Program-wide only if accessed.
Rules and Regulation
Here are some rules & regulation of public function which are explained below:
- Public Method/Function/Modifier/Keyword can be called outside of the class without any restriction as well as within the class access.
- Public Function/modifier should be accessed when the public function’s programming code needed to execute the code instructions of it or else Public function will do nothing.
- Access within the class using the public function/similar to it.
Recommended Articles
This is a guide to Public Function in PHP. Here we discuss working, advantages, rules, and regulations of Public Function in PHP along with its examples and code implementation. You may also look at the following articles to learn more-