3v4l.org

run code in 300+ PHP versions simultaneously
<?php Class Vehicle{ /* Delcaration of private variables */ private $_name = "Default Vehicle"; private $_model; private $_type; private $_identification; /* Declaration of private arrays */ private $_mode = array(); private $feature = array(); /* Magic code entry function, think of it as a main() in C/C++ */ public function __construct( $name, $model, $type ){ $this->create_vehicle( $name, $model, $type ); } /* __getter function */ public function __get( $variable ){ if( !empty($this->$variable) ){ $get_variable = $this->$variable; } return $get_variable; } /* __setter function */ public function __set( $variable, $target ){ $this->$variable = $target; } /* Private function */ private function create_vehicle( $name, $model, $type ){ $this->__set( "_name", $name ); $this->__set( "_model", $model); $this->__set( "_type", $type ); } } //end of the class. ?> <?php /* Using the Vehicle class to create a vehicle by passing three parameters 'vehicle name', 'vehicle model', 'vehicle type' to the class. */ $toyota = new Vehicle("Toyotal 101", "TY101", "Sedan"); /* Get the name and store it in a variable for later use */ $vehicle_name = $toyota->__get('_name'); /* Set the vehicle mode or status */ $vehicle_mode = array( 'gas' => 50, 'ignition' => 'OFF', 'tire' => "OK", 'year' => 2020, 'mfg' => 'Toyoda', 'condition' => 'New' ); /* Create vehicle features */ $vehicle_feature = array( "Tire" => 4, "Horse Power" => "V6", "blah blah" => "foo", "Airbag" => 2, "Transmission" => "Automatic" //.... ); /* Create vehicle identification */ $vehicle_identification = array( "VIN" => "0001234567ABCD89", "NAME" => $vehicle_name, "FEATURE" => $vehicle_feature, "MODEL" => $vehicle_mode, "YEAR" => 2020, "MFG" => "Totota" ); /* Set vehicle identification */ $toyota->__set("_identification", $vehicle_identification ); /* Set vehicle features */ $toyota->__set("_feature", $vehicle_feature ); /* Set vehicle mode */ $toyota->__set("_mode", $vehicle_mode); /* Retrieve information and store them in variable using __get (getter) */ $vehicle_name = $toyota->__get('_name'); $vehicle_mode = $toyota->__get('_mode'); $vehicle_id = $toyota->__get('_identification'); $vehicle_features = $toyota->__get('_feature'); $vehicle_type = $toyota->__get('_type'); $vehicle_model = $toyota->__get('_model'); /* Printing information using store values in the variables. */ echo "Printing Vehicle Information\n"; echo "*****************************\n"; echo "Vehicle name is $vehicle_name \n"; echo "Vehicle Model is $vehicle_model \n"; echo "Vehich type is $vehicle_type \n"; printf("\n\n"); echo "Printing Vehicle Mode\n"; echo "***********************\n"; print_r( $vehicle_mode ); printf("\n\n"); echo "Printing Vehicle Features\n"; echo "**************************\n"; print_r( $vehicle_features ); printf("\n\n"); echo "Printing Vehicle Identification\n"; echo "******************************\n"; print_r( $vehicle_id ); printf("\n\n"); ?>
Output for 8.2.0 - 8.2.29, 8.3.0 - 8.3.28, 8.4.1 - 8.4.14, 8.5.0 - 8.5.1
Deprecated: Creation of dynamic property Vehicle::$_feature is deprecated in /in/TkGZg on line 32 Printing Vehicle Information ***************************** Vehicle name is Toyotal 101 Vehicle Model is TY101 Vehich type is Sedan Printing Vehicle Mode *********************** Array ( [gas] => 50 [ignition] => OFF [tire] => OK [year] => 2020 [mfg] => Toyoda [condition] => New ) Printing Vehicle Features ************************** Array ( [Tire] => 4 [Horse Power] => V6 [blah blah] => foo [Airbag] => 2 [Transmission] => Automatic ) Printing Vehicle Identification ****************************** Array ( [VIN] => 0001234567ABCD89 [NAME] => Toyotal 101 [FEATURE] => Array ( [Tire] => 4 [Horse Power] => V6 [blah blah] => foo [Airbag] => 2 [Transmission] => Automatic ) [MODEL] => Array ( [gas] => 50 [ignition] => OFF [tire] => OK [year] => 2020 [mfg] => Toyoda [condition] => New ) [YEAR] => 2020 [MFG] => Totota )
Output for 8.4.15
/bin/php-8.4.15: /usr/lib/libm.so.6: version `GLIBC_2.38' not found (required by /bin/php-8.4.15) /bin/php-8.4.15: /usr/lib/libm.so.6: version `GLIBC_2.35' not found (required by /bin/php-8.4.15) /bin/php-8.4.15: /usr/lib/libc.so.6: version `GLIBC_2.34' not found (required by /bin/php-8.4.15) /bin/php-8.4.15: /usr/lib/libc.so.6: version `GLIBC_2.38' not found (required by /bin/php-8.4.15)
Process exited with code 1.
Output for 7.1.0 - 7.1.33, 7.2.0 - 7.2.34, 7.3.0 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.33
Printing Vehicle Information ***************************** Vehicle name is Toyotal 101 Vehicle Model is TY101 Vehich type is Sedan Printing Vehicle Mode *********************** Array ( [gas] => 50 [ignition] => OFF [tire] => OK [year] => 2020 [mfg] => Toyoda [condition] => New ) Printing Vehicle Features ************************** Array ( [Tire] => 4 [Horse Power] => V6 [blah blah] => foo [Airbag] => 2 [Transmission] => Automatic ) Printing Vehicle Identification ****************************** Array ( [VIN] => 0001234567ABCD89 [NAME] => Toyotal 101 [FEATURE] => Array ( [Tire] => 4 [Horse Power] => V6 [blah blah] => foo [Airbag] => 2 [Transmission] => Automatic ) [MODEL] => Array ( [gas] => 50 [ignition] => OFF [tire] => OK [year] => 2020 [mfg] => Toyoda [condition] => New ) [YEAR] => 2020 [MFG] => Totota )

preferences:
153.93 ms | 414 KiB | 5 Q