Is it possible to create static classes in PHP like in C

0 votes

I'm trying to make a static class in PHP behave like a C# class, so,

  • On the initial call to the class, the function Object() { [native code] } is immediately called.
  • No instantiation is necessary.

Something like this:

static class Hello {
    private static $greeting = 'Hello';

    private __construct() {
        $greeting .= ' There!';
    }

    public static greet(){
        echo $greeting;
    }
}

Hello::greet(); // Hello There!

 Can someone please help me with this?

Aug 4, 2022 in PHP by Kithuzzz
• 38,000 points
573 views

No answer to this question. Be the first to respond.

Your answer

Your name to display (optional):
Privacy: Your email address will only be used for sending these notifications.
0 votes

Although static classes are possible in PHP, they do not automatically execute the function Object() { [native code] } (if you attempt to call self:: construct(), an error will be returned).

As a result, you would need to develop an initialise() function and use it in each method:

<?php

class Hello
{
    private static $greeting = 'Hello';
    private static $initialized = false;

    private static function initialize()
    {
        if (self::$initialized)
            return;

        self::$greeting .= ' There!';
        self::$initialized = true;
    }

    public static function greet()
    {
        self::initialize();
        echo self::$greeting;
    }
}

Hello::greet(); // Hello There!


?>

I hope this helps you.

answered Aug 5, 2022 by narikkadan
• 63,600 points

edited Mar 5

Related Questions In PHP

0 votes
1 answer

What is a Cookie? How to create Cookies With PHP?

A cookie is often used to identify ...READ MORE

answered Feb 13, 2020 in PHP by Niroj
• 82,840 points
3,964 views
0 votes
1 answer

How to Debug Variables like in PHP var_dump()?

Hello @kartik, Try out with the Smarty Session: {$smarty.session|@debug_print_var} or {$smarty.session|@print_r} To ...READ MORE

answered Apr 20, 2020 in PHP by Niroj
• 82,840 points
1,678 views
0 votes
1 answer

How to import all classes from another namespace in PHP?

Hello @kartik, This is not possible in PHP. All ...READ MORE

answered Oct 20, 2020 in PHP by Niroj
• 82,840 points
5,367 views
0 votes
1 answer

In PHP, how to detect the execution is from CLI mode or through browser ?

Hello @kartik, Use the php_sapi_name() function. if (php_sapi_name() == "cli") { ...READ MORE

answered Oct 22, 2020 in PHP by Niroj
• 82,840 points
1,533 views
0 votes
1 answer

How to check if a string is an email address in PHP?

Hello, Try this without regular expressions: <?php ...READ MORE

answered Nov 3, 2020 in PHP by Niroj
• 82,840 points
4,211 views
0 votes
1 answer

How to check an IP address is within a range of two IPs in PHP?

Hello @kartik, With ip2long() it's easy to convert your addresses ...READ MORE

answered Nov 3, 2020 in PHP by Niroj
• 82,840 points
3,802 views
0 votes
0 answers

Is it possible to write strictly typed PHP code?

Is it possible to write code like ...READ MORE

Jun 6, 2022 in PHP by Kichu
• 19,040 points
486 views
0 votes
0 answers

unset variable in php

I just read a PHP manual. that ...READ MORE

Jun 10, 2022 in JQuery by narikkadan
• 63,600 points
532 views
0 votes
0 answers

What does the variable $this mean in PHP?

Can someone please explain how the variable ...READ MORE

Jun 11, 2022 in PHP by narikkadan
• 63,600 points
672 views
0 votes
0 answers

Static variables in PHP

Can someone please explain to me what ...READ MORE

Jun 12, 2022 in PHP by narikkadan
• 63,600 points
579 views
webinar REGISTER FOR FREE WEBINAR X
REGISTER NOW
webinar_success Thank you for registering Join Edureka Meetup community for 100+ Free Webinars each month JOIN MEETUP GROUP