diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractPhpCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractPhpCodegen.java
index bfbeb59452a538e21f3f1f0c37a4ac8edfe64581..ecf772d2394174dce18af92db17489d2d98ff767 100644
--- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractPhpCodegen.java
+++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractPhpCodegen.java
@@ -404,6 +404,8 @@ public abstract class AbstractPhpCodegen extends DefaultCodegen implements Codeg
             // return the name in camelCase style
             // phone_number => phoneNumber
             name = camelize(name, true);
+        } else if ("PascalCase".equals(variableNamingConvention)) {
+            name = camelize(name, false);
         } else { // default to snake case
             // return the name in underscore style
             // PhoneNumber => phone_number
diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/PhpLaravelServerCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/PhpLaravelServerCodegen.java
index 5dbaec3bbdd26bde8d27075bfbe4eccdc47b770c..52e038f7a8960145fdea779350c6bcc8baa0d045 100644
--- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/PhpLaravelServerCodegen.java
+++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/PhpLaravelServerCodegen.java
@@ -18,9 +18,13 @@
 package org.openapitools.codegen.languages;
 
 import org.openapitools.codegen.CodegenOperation;
+import org.openapitools.codegen.CodegenProperty;
 import org.openapitools.codegen.CodegenType;
 import org.openapitools.codegen.SupportingFile;
 import org.openapitools.codegen.meta.features.*;
+import org.openapitools.codegen.utils.ModelUtils;
+
+import io.swagger.v3.oas.models.media.Schema;
 
 import java.io.File;
 import java.util.*;
@@ -300,4 +304,96 @@ public class PhpLaravelServerCodegen extends AbstractPhpCodegen {
 
         return camelize(name, false) + "Controller";
     }
+
+    @Override
+    protected String getEnumDefaultValue(String defaultValue, String dataType) {
+        return defaultValue;
+    }
+
+    @Override
+    public CodegenProperty fromProperty(String name, Schema p) {
+        CodegenProperty property = super.fromProperty(name, p);
+        Schema referencedSchema = ModelUtils.getReferencedSchema(this.openAPI, p);
+
+        //Referenced enum case:
+        if (!property.isEnum && referencedSchema.getEnum() != null && !referencedSchema.getEnum().isEmpty()) {
+            property.dataType = this.getSchemaType(referencedSchema);
+            property.defaultValue = this.toDefaultValue(referencedSchema);
+            List<Object> _enum = referencedSchema.getEnum();
+
+            Map<String, Object> allowableValues = new HashMap<>();
+            allowableValues.put("values", _enum);
+            if (allowableValues.size() > 0) {
+                property.allowableValues = allowableValues;
+            }
+        }
+
+        return property;
+    }
+
+    @Override
+    public String toDefaultValue(Schema p) {
+        if (ModelUtils.isBooleanSchema(p)) {
+            if (p.getDefault() != null) {
+                return p.getDefault().toString();
+            } else if (!Boolean.TRUE.equals(p.getNullable())) {
+                return "false";
+            }
+        } else if (ModelUtils.isDateSchema(p)) {
+            // TODO
+        } else if (ModelUtils.isDateTimeSchema(p)) {
+            // TODO
+        } else if (ModelUtils.isFileSchema(p)) {
+            // TODO
+        } else if (ModelUtils.isNumberSchema(p)) {
+            if (p.getDefault() != null) {
+                return p.getDefault().toString();
+            } else if (!Boolean.TRUE.equals(p.getNullable())) {
+                return "0";
+            }
+        } else if (ModelUtils.isIntegerSchema(p)) {
+            if (p.getDefault() != null) {
+                return p.getDefault().toString();
+            } else if (!Boolean.TRUE.equals(p.getNullable())) {
+                return "0";
+            }
+        } else if (ModelUtils.isStringSchema(p)) {
+            if (p.getDefault() != null) {
+                return "'" + p.getDefault() + "'";
+            } else if (!Boolean.TRUE.equals(p.getNullable())) {
+                return "\"\"";
+            }
+        } else if (ModelUtils.isArraySchema(p)) {
+            if (p.getDefault() != null) {
+                return p.getDefault().toString();
+            } else if (!Boolean.TRUE.equals(p.getNullable())) {
+                return "[]";
+            }
+        }
+
+        return null;
+    }
+
+    @Override
+    public String toEnumDefaultValue(String value, String datatype) {
+        return datatype + "::" + value;
+    }
+
+    @Override
+    public String toEnumVarName(String value, String datatype) {
+        if (value.length() == 0) {
+            return super.toEnumVarName(value, datatype);
+        }
+
+        // number
+        if ("int".equals(datatype) || "double".equals(datatype) || "float".equals(datatype)) {
+            String varName = "NUMBER_" + value;
+            varName = varName.replaceAll("-", "MINUS_");
+            varName = varName.replaceAll("\\+", "PLUS_");
+            varName = varName.replaceAll("\\.", "_DOT_");
+            return varName;
+        }
+
+        return super.toEnumVarName(value, datatype);
+    }
 }
diff --git a/modules/openapi-generator/src/main/resources/php-laravel/model.mustache b/modules/openapi-generator/src/main/resources/php-laravel/model.mustache
index 966dd38ff036aa499c98ed13b6bcb51e36831313..13eedb98372586cbb6bc9b9b784fc44122e45963 100644
--- a/modules/openapi-generator/src/main/resources/php-laravel/model.mustache
+++ b/modules/openapi-generator/src/main/resources/php-laravel/model.mustache
@@ -1,21 +1,17 @@
 <?php
-{{#models}}{{#model}}/**
+{{#models}}
+{{#model}}
+/**
  * {{classname}}
  */
 namespace {{modelPackage}};
 
 /**
  * {{classname}}
+{{#description}}
+ * @description {{{.}}}
+{{/description}}
  */
-class {{classname}} {
-
-    {{#vars}}
-    /** @var {{{dataType}}} ${{name}} {{description}}*/
-{{#deprecated}}
-    /** @deprecated */
-{{/deprecated}}
-    private ${{name}};
-
-    {{/vars}}
-}
-{{/model}}{{/models}}
\ No newline at end of file
+{{#isEnum}}{{>model_enum}}{{/isEnum}}{{^isEnum}}{{>model_generic}}{{/isEnum}}
+{{/model}}
+{{/models}}
\ No newline at end of file
diff --git a/modules/openapi-generator/src/main/resources/php-laravel/model_enum.mustache b/modules/openapi-generator/src/main/resources/php-laravel/model_enum.mustache
new file mode 100644
index 0000000000000000000000000000000000000000..721f6b08ad849f99552f92a6f2daf7abbda02d5d
--- /dev/null
+++ b/modules/openapi-generator/src/main/resources/php-laravel/model_enum.mustache
@@ -0,0 +1,28 @@
+class {{classname}}
+{
+    /**
+     * Possible values of this enum
+     */
+    {{#allowableValues}}
+    {{#enumVars}}
+    const {{{name}}} = {{{value}}};
+
+    {{/enumVars}}
+    {{/allowableValues}}
+    /**
+     * Gets allowable values of the enum
+     * @return string[]
+     */
+    public static function getAllowableEnumValues()
+    {
+        return [
+            {{#allowableValues}}
+            {{#enumVars}}
+            self::{{{name}}}{{^-last}},
+            {{/-last}}
+            {{/enumVars}}
+            {{/allowableValues}}
+
+        ];
+    }
+}
\ No newline at end of file
diff --git a/modules/openapi-generator/src/main/resources/php-laravel/model_generic.mustache b/modules/openapi-generator/src/main/resources/php-laravel/model_generic.mustache
new file mode 100644
index 0000000000000000000000000000000000000000..dffa20ce4c07c9005f21df949dda943e99ebed0b
--- /dev/null
+++ b/modules/openapi-generator/src/main/resources/php-laravel/model_generic.mustache
@@ -0,0 +1,11 @@
+class {{classname}} {
+
+    {{#vars}}
+    /** @var {{{dataType}}}{{#isNullable}}|null{{/isNullable}} ${{name}} {{description}}*/
+{{#deprecated}}
+    /** @deprecated */
+{{/deprecated}}
+    public ${{name}}{{#defaultValue}} = {{{defaultValue}}}{{/defaultValue}}{{^defaultValue}}{{#isNullable}} = null{{/isNullable}}{{/defaultValue}};
+
+    {{/vars}}
+}
\ No newline at end of file
diff --git a/samples/server/petstore/php-laravel/lib/app/Models/AdditionalPropertiesClass.php b/samples/server/petstore/php-laravel/lib/app/Models/AdditionalPropertiesClass.php
index b6fbf24d048e7834ff285d8981c75e745ecb1de7..4723a9b145055cbff43f283a0543c087fd12f4cc 100644
--- a/samples/server/petstore/php-laravel/lib/app/Models/AdditionalPropertiesClass.php
+++ b/samples/server/petstore/php-laravel/lib/app/Models/AdditionalPropertiesClass.php
@@ -10,9 +10,9 @@ namespace app\Models;
 class AdditionalPropertiesClass {
 
     /** @var array<string,string> $mapProperty */
-    private $mapProperty;
+    public $mapProperty;
 
     /** @var array<string,array<string,string>> $mapOfMapProperty */
-    private $mapOfMapProperty;
+    public $mapOfMapProperty;
 
 }
diff --git a/samples/server/petstore/php-laravel/lib/app/Models/Animal.php b/samples/server/petstore/php-laravel/lib/app/Models/Animal.php
index 7435e7c2c0df7050d0fbb6ac2960a8db5164a44c..849e9d2937024f5a0ddd923c05aee1924564872a 100644
--- a/samples/server/petstore/php-laravel/lib/app/Models/Animal.php
+++ b/samples/server/petstore/php-laravel/lib/app/Models/Animal.php
@@ -10,9 +10,9 @@ namespace app\Models;
 class Animal {
 
     /** @var string $className */
-    private $className;
+    public $className = "";
 
     /** @var string $color */
-    private $color;
+    public $color = 'red';
 
 }
diff --git a/samples/server/petstore/php-laravel/lib/app/Models/ApiResponse.php b/samples/server/petstore/php-laravel/lib/app/Models/ApiResponse.php
index e9f556871bce4bf5a11f129500baa6b0b1ac2680..7bef1cdcd2281e5e77bad4e7eebc6d19ea0fde9d 100644
--- a/samples/server/petstore/php-laravel/lib/app/Models/ApiResponse.php
+++ b/samples/server/petstore/php-laravel/lib/app/Models/ApiResponse.php
@@ -10,12 +10,12 @@ namespace app\Models;
 class ApiResponse {
 
     /** @var int $code */
-    private $code;
+    public $code = 0;
 
     /** @var string $type */
-    private $type;
+    public $type = "";
 
     /** @var string $message */
-    private $message;
+    public $message = "";
 
 }
diff --git a/samples/server/petstore/php-laravel/lib/app/Models/ArrayOfArrayOfNumberOnly.php b/samples/server/petstore/php-laravel/lib/app/Models/ArrayOfArrayOfNumberOnly.php
index b1266485890cface638a5e412b9f5d0c1d9c1514..eef6c7cee6befb7c39d7af6b9f0eebcd4bb81e4d 100644
--- a/samples/server/petstore/php-laravel/lib/app/Models/ArrayOfArrayOfNumberOnly.php
+++ b/samples/server/petstore/php-laravel/lib/app/Models/ArrayOfArrayOfNumberOnly.php
@@ -10,6 +10,6 @@ namespace app\Models;
 class ArrayOfArrayOfNumberOnly {
 
     /** @var float[][] $arrayArrayNumber */
-    private $arrayArrayNumber;
+    public $arrayArrayNumber = [];
 
 }
diff --git a/samples/server/petstore/php-laravel/lib/app/Models/ArrayOfNumberOnly.php b/samples/server/petstore/php-laravel/lib/app/Models/ArrayOfNumberOnly.php
index 234a196f0c7514d4c771e8f1d4face7197b5bcd9..10148db76ab97141ecc35646d094ecda00eb6944 100644
--- a/samples/server/petstore/php-laravel/lib/app/Models/ArrayOfNumberOnly.php
+++ b/samples/server/petstore/php-laravel/lib/app/Models/ArrayOfNumberOnly.php
@@ -10,6 +10,6 @@ namespace app\Models;
 class ArrayOfNumberOnly {
 
     /** @var float[] $arrayNumber */
-    private $arrayNumber;
+    public $arrayNumber = [];
 
 }
diff --git a/samples/server/petstore/php-laravel/lib/app/Models/ArrayTest.php b/samples/server/petstore/php-laravel/lib/app/Models/ArrayTest.php
index fbb4b21ada8d78118cfd21664c293399d03e768c..bb1d9976ae1b2858045c9be215b6410436ff5c46 100644
--- a/samples/server/petstore/php-laravel/lib/app/Models/ArrayTest.php
+++ b/samples/server/petstore/php-laravel/lib/app/Models/ArrayTest.php
@@ -10,12 +10,12 @@ namespace app\Models;
 class ArrayTest {
 
     /** @var string[] $arrayOfString */
-    private $arrayOfString;
+    public $arrayOfString = [];
 
     /** @var int[][] $arrayArrayOfInteger */
-    private $arrayArrayOfInteger;
+    public $arrayArrayOfInteger = [];
 
     /** @var \app\Models\ReadOnlyFirst[][] $arrayArrayOfModel */
-    private $arrayArrayOfModel;
+    public $arrayArrayOfModel = [];
 
 }
diff --git a/samples/server/petstore/php-laravel/lib/app/Models/Capitalization.php b/samples/server/petstore/php-laravel/lib/app/Models/Capitalization.php
index a8779787ecafb20f780cf75f6ad58a06cd30b654..9e7df6f9195a4289a84ae73236e92257380fb052 100644
--- a/samples/server/petstore/php-laravel/lib/app/Models/Capitalization.php
+++ b/samples/server/petstore/php-laravel/lib/app/Models/Capitalization.php
@@ -10,21 +10,21 @@ namespace app\Models;
 class Capitalization {
 
     /** @var string $smallCamel */
-    private $smallCamel;
+    public $smallCamel = "";
 
     /** @var string $capitalCamel */
-    private $capitalCamel;
+    public $capitalCamel = "";
 
     /** @var string $smallSnake */
-    private $smallSnake;
+    public $smallSnake = "";
 
     /** @var string $capitalSnake */
-    private $capitalSnake;
+    public $capitalSnake = "";
 
     /** @var string $sCAETHFlowPoints */
-    private $sCAETHFlowPoints;
+    public $sCAETHFlowPoints = "";
 
     /** @var string $aTTNAME Name of the pet*/
-    private $aTTNAME;
+    public $aTTNAME = "";
 
 }
diff --git a/samples/server/petstore/php-laravel/lib/app/Models/Cat.php b/samples/server/petstore/php-laravel/lib/app/Models/Cat.php
index 976181f474ce951d37d628e5ce9bfe2c1e20fcb6..dc1051497f72b14ecdb3a0f050f76e455c8d6bfb 100644
--- a/samples/server/petstore/php-laravel/lib/app/Models/Cat.php
+++ b/samples/server/petstore/php-laravel/lib/app/Models/Cat.php
@@ -10,12 +10,12 @@ namespace app\Models;
 class Cat {
 
     /** @var string $className */
-    private $className;
+    public $className = "";
 
     /** @var string $color */
-    private $color;
+    public $color = 'red';
 
     /** @var bool $declawed */
-    private $declawed;
+    public $declawed = false;
 
 }
diff --git a/samples/server/petstore/php-laravel/lib/app/Models/CatAllOf.php b/samples/server/petstore/php-laravel/lib/app/Models/CatAllOf.php
index ee2fd0f4c12d6e9220409d70f028daafa05018c0..6e02243b0d35e1ce2e7c726b265680eb3c1aef27 100644
--- a/samples/server/petstore/php-laravel/lib/app/Models/CatAllOf.php
+++ b/samples/server/petstore/php-laravel/lib/app/Models/CatAllOf.php
@@ -10,6 +10,6 @@ namespace app\Models;
 class CatAllOf {
 
     /** @var bool $declawed */
-    private $declawed;
+    public $declawed = false;
 
 }
diff --git a/samples/server/petstore/php-laravel/lib/app/Models/Category.php b/samples/server/petstore/php-laravel/lib/app/Models/Category.php
index 58a9362f2d2dfb19bff81e006421888aa0999631..d55589dbcb2f9dcd6cf3da330fdf247845280317 100644
--- a/samples/server/petstore/php-laravel/lib/app/Models/Category.php
+++ b/samples/server/petstore/php-laravel/lib/app/Models/Category.php
@@ -10,9 +10,9 @@ namespace app\Models;
 class Category {
 
     /** @var int $id */
-    private $id;
+    public $id = 0;
 
     /** @var string $name */
-    private $name;
+    public $name = 'default-name';
 
 }
diff --git a/samples/server/petstore/php-laravel/lib/app/Models/ClassModel.php b/samples/server/petstore/php-laravel/lib/app/Models/ClassModel.php
index fbc93a019937108f4f4eec23fe60fad36ac29ccf..ec6bc6e01d8ca206cd2aad3db4a188abf2214896 100644
--- a/samples/server/petstore/php-laravel/lib/app/Models/ClassModel.php
+++ b/samples/server/petstore/php-laravel/lib/app/Models/ClassModel.php
@@ -6,10 +6,11 @@ namespace app\Models;
 
 /**
  * ClassModel
+ * @description Model for testing model with \"_class\" property
  */
 class ClassModel {
 
     /** @var string $class */
-    private $class;
+    public $class = "";
 
 }
diff --git a/samples/server/petstore/php-laravel/lib/app/Models/Client.php b/samples/server/petstore/php-laravel/lib/app/Models/Client.php
index 35358e061057b87e7711e305c5a1834cf760be63..3bd5f9d0a2b0b4a0f44f1b056368e4792d8f1bc6 100644
--- a/samples/server/petstore/php-laravel/lib/app/Models/Client.php
+++ b/samples/server/petstore/php-laravel/lib/app/Models/Client.php
@@ -10,6 +10,6 @@ namespace app\Models;
 class Client {
 
     /** @var string $client */
-    private $client;
+    public $client = "";
 
 }
diff --git a/samples/server/petstore/php-laravel/lib/app/Models/DeprecatedObject.php b/samples/server/petstore/php-laravel/lib/app/Models/DeprecatedObject.php
index d25a9f5c215574d0ddac543c1f7ad695d2c74bbe..ab953b1b5a32552d7726bbe284b0cb2be2313201 100644
--- a/samples/server/petstore/php-laravel/lib/app/Models/DeprecatedObject.php
+++ b/samples/server/petstore/php-laravel/lib/app/Models/DeprecatedObject.php
@@ -10,6 +10,6 @@ namespace app\Models;
 class DeprecatedObject {
 
     /** @var string $name */
-    private $name;
+    public $name = "";
 
 }
diff --git a/samples/server/petstore/php-laravel/lib/app/Models/Dog.php b/samples/server/petstore/php-laravel/lib/app/Models/Dog.php
index 342d76fdb68f357361afa8c05947794e8fb86e06..c089badb0dd9ca9d526fa2f3f6b83dbeabb1d246 100644
--- a/samples/server/petstore/php-laravel/lib/app/Models/Dog.php
+++ b/samples/server/petstore/php-laravel/lib/app/Models/Dog.php
@@ -10,12 +10,12 @@ namespace app\Models;
 class Dog {
 
     /** @var string $className */
-    private $className;
+    public $className = "";
 
     /** @var string $color */
-    private $color;
+    public $color = 'red';
 
     /** @var string $breed */
-    private $breed;
+    public $breed = "";
 
 }
diff --git a/samples/server/petstore/php-laravel/lib/app/Models/DogAllOf.php b/samples/server/petstore/php-laravel/lib/app/Models/DogAllOf.php
index ae0daf91bb5d6de9f44eed8e989f7d1c6ab8ca9f..97b9fa650a170551da2eea822036be7d73d05b8c 100644
--- a/samples/server/petstore/php-laravel/lib/app/Models/DogAllOf.php
+++ b/samples/server/petstore/php-laravel/lib/app/Models/DogAllOf.php
@@ -10,6 +10,6 @@ namespace app\Models;
 class DogAllOf {
 
     /** @var string $breed */
-    private $breed;
+    public $breed = "";
 
 }
diff --git a/samples/server/petstore/php-laravel/lib/app/Models/EnumArrays.php b/samples/server/petstore/php-laravel/lib/app/Models/EnumArrays.php
index d01dec52879b19448b943e6d0e8941703a4f1dd8..deced9baf3c0a0436238498c5322b73ab833805c 100644
--- a/samples/server/petstore/php-laravel/lib/app/Models/EnumArrays.php
+++ b/samples/server/petstore/php-laravel/lib/app/Models/EnumArrays.php
@@ -10,9 +10,9 @@ namespace app\Models;
 class EnumArrays {
 
     /** @var string $justSymbol */
-    private $justSymbol;
+    public $justSymbol = "";
 
     /** @var string[] $arrayEnum */
-    private $arrayEnum;
+    public $arrayEnum = [];
 
 }
diff --git a/samples/server/petstore/php-laravel/lib/app/Models/EnumClass.php b/samples/server/petstore/php-laravel/lib/app/Models/EnumClass.php
index 84f07bbf73e488e34618b62d47003033d25497ae..f1122eae53cbcb4cb8bccbf8197578f7fbfd0793 100644
--- a/samples/server/petstore/php-laravel/lib/app/Models/EnumClass.php
+++ b/samples/server/petstore/php-laravel/lib/app/Models/EnumClass.php
@@ -7,6 +7,27 @@ namespace app\Models;
 /**
  * EnumClass
  */
-class EnumClass {
+class EnumClass
+{
+    /**
+     * Possible values of this enum
+     */
+    const ABC = '_abc';
 
+    const EFG = '-efg';
+
+    const XYZ = '(xyz)';
+
+    /**
+     * Gets allowable values of the enum
+     * @return string[]
+     */
+    public static function getAllowableEnumValues()
+    {
+        return [
+            self::ABC,
+            self::EFG,
+            self::XYZ
+        ];
+    }
 }
diff --git a/samples/server/petstore/php-laravel/lib/app/Models/EnumTest.php b/samples/server/petstore/php-laravel/lib/app/Models/EnumTest.php
index ce1eb85dd8dca072bbb6c635f9f33e9a1c44f848..b188f1e86f0c9257d89576a9ee2741f802186e00 100644
--- a/samples/server/petstore/php-laravel/lib/app/Models/EnumTest.php
+++ b/samples/server/petstore/php-laravel/lib/app/Models/EnumTest.php
@@ -10,27 +10,27 @@ namespace app\Models;
 class EnumTest {
 
     /** @var string $enumString */
-    private $enumString;
+    public $enumString = "";
 
     /** @var string $enumStringRequired */
-    private $enumStringRequired;
+    public $enumStringRequired = "";
 
     /** @var int $enumInteger */
-    private $enumInteger;
+    public $enumInteger = 0;
 
     /** @var double $enumNumber */
-    private $enumNumber;
+    public $enumNumber = 0;
 
-    /** @var \app\Models\OuterEnum $outerEnum */
-    private $outerEnum;
+    /** @var string|null $outerEnum */
+    public $outerEnum = null;
 
-    /** @var \app\Models\OuterEnumInteger $outerEnumInteger */
-    private $outerEnumInteger;
+    /** @var int $outerEnumInteger */
+    public $outerEnumInteger = \app\Models\OuterEnumInteger::NUMBER_0;
 
-    /** @var \app\Models\OuterEnumDefaultValue $outerEnumDefaultValue */
-    private $outerEnumDefaultValue;
+    /** @var string $outerEnumDefaultValue */
+    public $outerEnumDefaultValue = \app\Models\OuterEnumDefaultValue::PLACED;
 
-    /** @var \app\Models\OuterEnumIntegerDefaultValue $outerEnumIntegerDefaultValue */
-    private $outerEnumIntegerDefaultValue;
+    /** @var int $outerEnumIntegerDefaultValue */
+    public $outerEnumIntegerDefaultValue = \app\Models\OuterEnumIntegerDefaultValue::NUMBER_0;
 
 }
diff --git a/samples/server/petstore/php-laravel/lib/app/Models/File.php b/samples/server/petstore/php-laravel/lib/app/Models/File.php
index ec0215ae1048857e798f48d4d9a39444cf1441c4..e545d139bfa7ec9c0f0034b352049f37631e1cd6 100644
--- a/samples/server/petstore/php-laravel/lib/app/Models/File.php
+++ b/samples/server/petstore/php-laravel/lib/app/Models/File.php
@@ -6,10 +6,11 @@ namespace app\Models;
 
 /**
  * File
+ * @description Must be named `File` for test.
  */
 class File {
 
     /** @var string $sourceURI Test capitalization*/
-    private $sourceURI;
+    public $sourceURI = "";
 
 }
diff --git a/samples/server/petstore/php-laravel/lib/app/Models/FileSchemaTestClass.php b/samples/server/petstore/php-laravel/lib/app/Models/FileSchemaTestClass.php
index 64fe925c123c47d86bcaeda7fefd9ce6ce6b3886..da7de36f078c026447e3774eeba2c86740e224f8 100644
--- a/samples/server/petstore/php-laravel/lib/app/Models/FileSchemaTestClass.php
+++ b/samples/server/petstore/php-laravel/lib/app/Models/FileSchemaTestClass.php
@@ -10,9 +10,9 @@ namespace app\Models;
 class FileSchemaTestClass {
 
     /** @var \app\Models\File $file */
-    private $file;
+    public $file;
 
     /** @var \app\Models\File[] $files */
-    private $files;
+    public $files = [];
 
 }
diff --git a/samples/server/petstore/php-laravel/lib/app/Models/Foo.php b/samples/server/petstore/php-laravel/lib/app/Models/Foo.php
index 96d9bcf87050d1712c3938a4306d41981c365602..190be91729b9eee7012a3a06590839c7a7b2252a 100644
--- a/samples/server/petstore/php-laravel/lib/app/Models/Foo.php
+++ b/samples/server/petstore/php-laravel/lib/app/Models/Foo.php
@@ -10,6 +10,6 @@ namespace app\Models;
 class Foo {
 
     /** @var string $bar */
-    private $bar;
+    public $bar = 'bar';
 
 }
diff --git a/samples/server/petstore/php-laravel/lib/app/Models/FormatTest.php b/samples/server/petstore/php-laravel/lib/app/Models/FormatTest.php
index c7dbd850eb6d53de63816da566dea151c91953f0..d5114123c6b9cb2b4954798d1c910b3b473cf27e 100644
--- a/samples/server/petstore/php-laravel/lib/app/Models/FormatTest.php
+++ b/samples/server/petstore/php-laravel/lib/app/Models/FormatTest.php
@@ -10,51 +10,51 @@ namespace app\Models;
 class FormatTest {
 
     /** @var int $integer */
-    private $integer;
+    public $integer = 0;
 
     /** @var int $int32 */
-    private $int32;
+    public $int32 = 0;
 
     /** @var int $int64 */
-    private $int64;
+    public $int64 = 0;
 
     /** @var float $number */
-    private $number;
+    public $number = 0;
 
     /** @var float $float */
-    private $float;
+    public $float = 0;
 
     /** @var double $double */
-    private $double;
+    public $double = 0;
 
     /** @var float $decimal */
-    private $decimal;
+    public $decimal = "";
 
     /** @var string $string */
-    private $string;
+    public $string = "";
 
     /** @var string $byte */
-    private $byte;
+    public $byte = "";
 
     /** @var \SplFileObject $binary */
-    private $binary;
+    public $binary;
 
     /** @var \DateTime $date */
-    private $date;
+    public $date;
 
     /** @var \DateTime $dateTime */
-    private $dateTime;
+    public $dateTime;
 
     /** @var string $uuid */
-    private $uuid;
+    public $uuid = "";
 
     /** @var string $password */
-    private $password;
+    public $password = "";
 
     /** @var string $patternWithDigits A string that is a 10 digit number. Can have leading zeros.*/
-    private $patternWithDigits;
+    public $patternWithDigits = "";
 
     /** @var string $patternWithDigitsAndDelimiter A string starting with &#39;image_&#39; (case insensitive) and one to three digits following i.e. Image_01.*/
-    private $patternWithDigitsAndDelimiter;
+    public $patternWithDigitsAndDelimiter = "";
 
 }
diff --git a/samples/server/petstore/php-laravel/lib/app/Models/HasOnlyReadOnly.php b/samples/server/petstore/php-laravel/lib/app/Models/HasOnlyReadOnly.php
index ecea2a0d4d91476cdf27d4c0eaacd99bab03ac5f..9bddb5c13e1d9316f0a2ffef1078eecec7fef86f 100644
--- a/samples/server/petstore/php-laravel/lib/app/Models/HasOnlyReadOnly.php
+++ b/samples/server/petstore/php-laravel/lib/app/Models/HasOnlyReadOnly.php
@@ -10,9 +10,9 @@ namespace app\Models;
 class HasOnlyReadOnly {
 
     /** @var string $bar */
-    private $bar;
+    public $bar = "";
 
     /** @var string $foo */
-    private $foo;
+    public $foo = "";
 
 }
diff --git a/samples/server/petstore/php-laravel/lib/app/Models/HealthCheckResult.php b/samples/server/petstore/php-laravel/lib/app/Models/HealthCheckResult.php
index 6117de37ec8faab0b748e79203f321922f27d348..ed344226c4324542609d71cd682b9a8eccfa2108 100644
--- a/samples/server/petstore/php-laravel/lib/app/Models/HealthCheckResult.php
+++ b/samples/server/petstore/php-laravel/lib/app/Models/HealthCheckResult.php
@@ -6,10 +6,11 @@ namespace app\Models;
 
 /**
  * HealthCheckResult
+ * @description Just a string to inform instance is up and running. Make it nullable in hope to get it as pointer in generated model.
  */
 class HealthCheckResult {
 
-    /** @var string $nullableMessage */
-    private $nullableMessage;
+    /** @var string|null $nullableMessage */
+    public $nullableMessage = null;
 
 }
diff --git a/samples/server/petstore/php-laravel/lib/app/Models/InlineResponseDefault.php b/samples/server/petstore/php-laravel/lib/app/Models/InlineResponseDefault.php
index 492517d312a67e98a91d1ce178a6cab137d42b29..b9bfae57b0d8327802d7fe44d564b3f5ad899c89 100644
--- a/samples/server/petstore/php-laravel/lib/app/Models/InlineResponseDefault.php
+++ b/samples/server/petstore/php-laravel/lib/app/Models/InlineResponseDefault.php
@@ -10,6 +10,6 @@ namespace app\Models;
 class InlineResponseDefault {
 
     /** @var \app\Models\Foo $string */
-    private $string;
+    public $string;
 
 }
diff --git a/samples/server/petstore/php-laravel/lib/app/Models/MapTest.php b/samples/server/petstore/php-laravel/lib/app/Models/MapTest.php
index 4da0831f2b2b5ff704f47f018452a7a2b663bd06..0db48d078380b202d0fb633faeb9846d73474333 100644
--- a/samples/server/petstore/php-laravel/lib/app/Models/MapTest.php
+++ b/samples/server/petstore/php-laravel/lib/app/Models/MapTest.php
@@ -10,15 +10,15 @@ namespace app\Models;
 class MapTest {
 
     /** @var array<string,array<string,string>> $mapMapOfString */
-    private $mapMapOfString;
+    public $mapMapOfString;
 
     /** @var array<string,string> $mapOfEnumString */
-    private $mapOfEnumString;
+    public $mapOfEnumString;
 
     /** @var array<string,bool> $directMap */
-    private $directMap;
+    public $directMap;
 
     /** @var array<string,bool> $indirectMap */
-    private $indirectMap;
+    public $indirectMap;
 
 }
diff --git a/samples/server/petstore/php-laravel/lib/app/Models/MixedPropertiesAndAdditionalPropertiesClass.php b/samples/server/petstore/php-laravel/lib/app/Models/MixedPropertiesAndAdditionalPropertiesClass.php
index 6e60f59408c5d30a3aa401f243917204896a5714..fdef699e28d9a51d2628e0aca917bc6d80a844b8 100644
--- a/samples/server/petstore/php-laravel/lib/app/Models/MixedPropertiesAndAdditionalPropertiesClass.php
+++ b/samples/server/petstore/php-laravel/lib/app/Models/MixedPropertiesAndAdditionalPropertiesClass.php
@@ -10,12 +10,12 @@ namespace app\Models;
 class MixedPropertiesAndAdditionalPropertiesClass {
 
     /** @var string $uuid */
-    private $uuid;
+    public $uuid = "";
 
     /** @var \DateTime $dateTime */
-    private $dateTime;
+    public $dateTime;
 
     /** @var array<string,\app\Models\Animal> $map */
-    private $map;
+    public $map;
 
 }
diff --git a/samples/server/petstore/php-laravel/lib/app/Models/Model200Response.php b/samples/server/petstore/php-laravel/lib/app/Models/Model200Response.php
index a5c928983b6c72749087f6005ef015365dd28dd0..8cce1700b2d39c70e44b91b66c3c3ba64eae58bf 100644
--- a/samples/server/petstore/php-laravel/lib/app/Models/Model200Response.php
+++ b/samples/server/petstore/php-laravel/lib/app/Models/Model200Response.php
@@ -6,13 +6,14 @@ namespace app\Models;
 
 /**
  * Model200Response
+ * @description Model for testing model name starting with number
  */
 class Model200Response {
 
     /** @var int $name */
-    private $name;
+    public $name = 0;
 
     /** @var string $class */
-    private $class;
+    public $class = "";
 
 }
diff --git a/samples/server/petstore/php-laravel/lib/app/Models/ModelList.php b/samples/server/petstore/php-laravel/lib/app/Models/ModelList.php
index fe53b6dc79e74abd63e4903c773141493a3918d5..7b7e554f257407c3028065ea3adb2fae8f8589f7 100644
--- a/samples/server/petstore/php-laravel/lib/app/Models/ModelList.php
+++ b/samples/server/petstore/php-laravel/lib/app/Models/ModelList.php
@@ -10,6 +10,6 @@ namespace app\Models;
 class ModelList {
 
     /** @var string $_123list */
-    private $_123list;
+    public $_123list = "";
 
 }
diff --git a/samples/server/petstore/php-laravel/lib/app/Models/ModelReturn.php b/samples/server/petstore/php-laravel/lib/app/Models/ModelReturn.php
index e8d9d76df4fa24e374df551be015000fc9cf9b85..af5746619e5d6c181a0be6a5bb8ea23e0f398577 100644
--- a/samples/server/petstore/php-laravel/lib/app/Models/ModelReturn.php
+++ b/samples/server/petstore/php-laravel/lib/app/Models/ModelReturn.php
@@ -6,10 +6,11 @@ namespace app\Models;
 
 /**
  * ModelReturn
+ * @description Model for testing reserved words
  */
 class ModelReturn {
 
     /** @var int $return */
-    private $return;
+    public $return = 0;
 
 }
diff --git a/samples/server/petstore/php-laravel/lib/app/Models/Name.php b/samples/server/petstore/php-laravel/lib/app/Models/Name.php
index 5cb44dc7fbee732978410c7e4939490640e9f040..7024516636ecb95e42c6ed06b8c60be6553966e3 100644
--- a/samples/server/petstore/php-laravel/lib/app/Models/Name.php
+++ b/samples/server/petstore/php-laravel/lib/app/Models/Name.php
@@ -6,19 +6,20 @@ namespace app\Models;
 
 /**
  * Name
+ * @description Model for testing model name same as property name
  */
 class Name {
 
     /** @var int $name */
-    private $name;
+    public $name = 0;
 
     /** @var int $snakeCase */
-    private $snakeCase;
+    public $snakeCase = 0;
 
     /** @var string $property */
-    private $property;
+    public $property = "";
 
     /** @var int $_123number */
-    private $_123number;
+    public $_123number = 0;
 
 }
diff --git a/samples/server/petstore/php-laravel/lib/app/Models/NullableClass.php b/samples/server/petstore/php-laravel/lib/app/Models/NullableClass.php
index 49079451568a1080c1b882fbb2eb2de50bc8c52e..ddae5194493b158e355d3cda31679404ebf8d8bd 100644
--- a/samples/server/petstore/php-laravel/lib/app/Models/NullableClass.php
+++ b/samples/server/petstore/php-laravel/lib/app/Models/NullableClass.php
@@ -9,40 +9,40 @@ namespace app\Models;
  */
 class NullableClass {
 
-    /** @var int $integerProp */
-    private $integerProp;
+    /** @var int|null $integerProp */
+    public $integerProp = null;
 
-    /** @var float $numberProp */
-    private $numberProp;
+    /** @var float|null $numberProp */
+    public $numberProp = null;
 
-    /** @var bool $booleanProp */
-    private $booleanProp;
+    /** @var bool|null $booleanProp */
+    public $booleanProp = null;
 
-    /** @var string $stringProp */
-    private $stringProp;
+    /** @var string|null $stringProp */
+    public $stringProp = null;
 
-    /** @var \DateTime $dateProp */
-    private $dateProp;
+    /** @var \DateTime|null $dateProp */
+    public $dateProp = null;
 
-    /** @var \DateTime $datetimeProp */
-    private $datetimeProp;
+    /** @var \DateTime|null $datetimeProp */
+    public $datetimeProp = null;
 
-    /** @var object[] $arrayNullableProp */
-    private $arrayNullableProp;
+    /** @var object[]|null $arrayNullableProp */
+    public $arrayNullableProp = null;
 
-    /** @var object[] $arrayAndItemsNullableProp */
-    private $arrayAndItemsNullableProp;
+    /** @var object[]|null $arrayAndItemsNullableProp */
+    public $arrayAndItemsNullableProp = null;
 
     /** @var object[] $arrayItemsNullable */
-    private $arrayItemsNullable;
+    public $arrayItemsNullable = [];
 
-    /** @var array<string,object> $objectNullableProp */
-    private $objectNullableProp;
+    /** @var array<string,object>|null $objectNullableProp */
+    public $objectNullableProp = null;
 
-    /** @var array<string,object> $objectAndItemsNullableProp */
-    private $objectAndItemsNullableProp;
+    /** @var array<string,object>|null $objectAndItemsNullableProp */
+    public $objectAndItemsNullableProp = null;
 
     /** @var array<string,object> $objectItemsNullable */
-    private $objectItemsNullable;
+    public $objectItemsNullable;
 
 }
diff --git a/samples/server/petstore/php-laravel/lib/app/Models/NumberOnly.php b/samples/server/petstore/php-laravel/lib/app/Models/NumberOnly.php
index 08b7fdcce6d042fa6ad2cc6bcba046e722eaa51c..8b6f6d27c1ac243a5a8d76591786269e939c3ed1 100644
--- a/samples/server/petstore/php-laravel/lib/app/Models/NumberOnly.php
+++ b/samples/server/petstore/php-laravel/lib/app/Models/NumberOnly.php
@@ -10,6 +10,6 @@ namespace app\Models;
 class NumberOnly {
 
     /** @var float $justNumber */
-    private $justNumber;
+    public $justNumber = 0;
 
 }
diff --git a/samples/server/petstore/php-laravel/lib/app/Models/ObjectWithDeprecatedFields.php b/samples/server/petstore/php-laravel/lib/app/Models/ObjectWithDeprecatedFields.php
index 47b30e1579a6997f23da0192a4c1f4d1bd4def5f..1db69d23d8d8d8b907cbf63da0cc1bf506306738 100644
--- a/samples/server/petstore/php-laravel/lib/app/Models/ObjectWithDeprecatedFields.php
+++ b/samples/server/petstore/php-laravel/lib/app/Models/ObjectWithDeprecatedFields.php
@@ -10,18 +10,18 @@ namespace app\Models;
 class ObjectWithDeprecatedFields {
 
     /** @var string $uuid */
-    private $uuid;
+    public $uuid = "";
 
     /** @var float $id */
     /** @deprecated */
-    private $id;
+    public $id = 0;
 
     /** @var \app\Models\DeprecatedObject $deprecatedRef */
     /** @deprecated */
-    private $deprecatedRef;
+    public $deprecatedRef;
 
     /** @var string[] $bars */
     /** @deprecated */
-    private $bars;
+    public $bars = [];
 
 }
diff --git a/samples/server/petstore/php-laravel/lib/app/Models/Order.php b/samples/server/petstore/php-laravel/lib/app/Models/Order.php
index c6c557095f2c1e45fe037ef6f51bed6bf7dca7e1..7a064af737c74dba13ca69276ab12dec3fc0532c 100644
--- a/samples/server/petstore/php-laravel/lib/app/Models/Order.php
+++ b/samples/server/petstore/php-laravel/lib/app/Models/Order.php
@@ -10,21 +10,21 @@ namespace app\Models;
 class Order {
 
     /** @var int $id */
-    private $id;
+    public $id = 0;
 
     /** @var int $petId */
-    private $petId;
+    public $petId = 0;
 
     /** @var int $quantity */
-    private $quantity;
+    public $quantity = 0;
 
     /** @var \DateTime $shipDate */
-    private $shipDate;
+    public $shipDate;
 
     /** @var string $status Order Status*/
-    private $status;
+    public $status = "";
 
     /** @var bool $complete */
-    private $complete;
+    public $complete = false;
 
 }
diff --git a/samples/server/petstore/php-laravel/lib/app/Models/OuterComposite.php b/samples/server/petstore/php-laravel/lib/app/Models/OuterComposite.php
index a4872293639abbe2c92194e0c69dc1d8c8cfefa1..66c8ae3048b081439b6460454ff1361478ee3565 100644
--- a/samples/server/petstore/php-laravel/lib/app/Models/OuterComposite.php
+++ b/samples/server/petstore/php-laravel/lib/app/Models/OuterComposite.php
@@ -10,12 +10,12 @@ namespace app\Models;
 class OuterComposite {
 
     /** @var float $myNumber */
-    private $myNumber;
+    public $myNumber = 0;
 
     /** @var string $myString */
-    private $myString;
+    public $myString = "";
 
     /** @var bool $myBoolean */
-    private $myBoolean;
+    public $myBoolean = false;
 
 }
diff --git a/samples/server/petstore/php-laravel/lib/app/Models/OuterEnum.php b/samples/server/petstore/php-laravel/lib/app/Models/OuterEnum.php
index b432df169d5985210b88b2d1f7f3f9129c6654b3..7b03d248858b05e2a8135cf0c0d161eede6f67e5 100644
--- a/samples/server/petstore/php-laravel/lib/app/Models/OuterEnum.php
+++ b/samples/server/petstore/php-laravel/lib/app/Models/OuterEnum.php
@@ -7,6 +7,27 @@ namespace app\Models;
 /**
  * OuterEnum
  */
-class OuterEnum {
+class OuterEnum
+{
+    /**
+     * Possible values of this enum
+     */
+    const PLACED = 'placed';
 
+    const APPROVED = 'approved';
+
+    const DELIVERED = 'delivered';
+
+    /**
+     * Gets allowable values of the enum
+     * @return string[]
+     */
+    public static function getAllowableEnumValues()
+    {
+        return [
+            self::PLACED,
+            self::APPROVED,
+            self::DELIVERED
+        ];
+    }
 }
diff --git a/samples/server/petstore/php-laravel/lib/app/Models/OuterEnumDefaultValue.php b/samples/server/petstore/php-laravel/lib/app/Models/OuterEnumDefaultValue.php
index 079fe7847902d7e008e24c93a02dc10274380d0c..f87bd723df5073e97d8e703f8499228e548ec95e 100644
--- a/samples/server/petstore/php-laravel/lib/app/Models/OuterEnumDefaultValue.php
+++ b/samples/server/petstore/php-laravel/lib/app/Models/OuterEnumDefaultValue.php
@@ -7,6 +7,27 @@ namespace app\Models;
 /**
  * OuterEnumDefaultValue
  */
-class OuterEnumDefaultValue {
+class OuterEnumDefaultValue
+{
+    /**
+     * Possible values of this enum
+     */
+    const PLACED = 'placed';
 
+    const APPROVED = 'approved';
+
+    const DELIVERED = 'delivered';
+
+    /**
+     * Gets allowable values of the enum
+     * @return string[]
+     */
+    public static function getAllowableEnumValues()
+    {
+        return [
+            self::PLACED,
+            self::APPROVED,
+            self::DELIVERED
+        ];
+    }
 }
diff --git a/samples/server/petstore/php-laravel/lib/app/Models/OuterEnumInteger.php b/samples/server/petstore/php-laravel/lib/app/Models/OuterEnumInteger.php
index 848b9a89f3f25502086953a96719c90633339a08..fdf2e5a34234775a3aa5130a06de89536cf902f5 100644
--- a/samples/server/petstore/php-laravel/lib/app/Models/OuterEnumInteger.php
+++ b/samples/server/petstore/php-laravel/lib/app/Models/OuterEnumInteger.php
@@ -7,6 +7,27 @@ namespace app\Models;
 /**
  * OuterEnumInteger
  */
-class OuterEnumInteger {
+class OuterEnumInteger
+{
+    /**
+     * Possible values of this enum
+     */
+    const NUMBER_0 = 0;
 
+    const NUMBER_1 = 1;
+
+    const NUMBER_2 = 2;
+
+    /**
+     * Gets allowable values of the enum
+     * @return string[]
+     */
+    public static function getAllowableEnumValues()
+    {
+        return [
+            self::NUMBER_0,
+            self::NUMBER_1,
+            self::NUMBER_2
+        ];
+    }
 }
diff --git a/samples/server/petstore/php-laravel/lib/app/Models/OuterEnumIntegerDefaultValue.php b/samples/server/petstore/php-laravel/lib/app/Models/OuterEnumIntegerDefaultValue.php
index 93c9f08672e4d805d49391bcf543c91712c78ca7..926c7f65c13f703872960113d5e6979b1d71a693 100644
--- a/samples/server/petstore/php-laravel/lib/app/Models/OuterEnumIntegerDefaultValue.php
+++ b/samples/server/petstore/php-laravel/lib/app/Models/OuterEnumIntegerDefaultValue.php
@@ -7,6 +7,27 @@ namespace app\Models;
 /**
  * OuterEnumIntegerDefaultValue
  */
-class OuterEnumIntegerDefaultValue {
+class OuterEnumIntegerDefaultValue
+{
+    /**
+     * Possible values of this enum
+     */
+    const NUMBER_0 = 0;
 
+    const NUMBER_1 = 1;
+
+    const NUMBER_2 = 2;
+
+    /**
+     * Gets allowable values of the enum
+     * @return string[]
+     */
+    public static function getAllowableEnumValues()
+    {
+        return [
+            self::NUMBER_0,
+            self::NUMBER_1,
+            self::NUMBER_2
+        ];
+    }
 }
diff --git a/samples/server/petstore/php-laravel/lib/app/Models/OuterObjectWithEnumProperty.php b/samples/server/petstore/php-laravel/lib/app/Models/OuterObjectWithEnumProperty.php
index b2bd8d779644e025a3b00a03993b847287b995ff..0d090f09dd800023f8af90c9cc4121f4ad14af6f 100644
--- a/samples/server/petstore/php-laravel/lib/app/Models/OuterObjectWithEnumProperty.php
+++ b/samples/server/petstore/php-laravel/lib/app/Models/OuterObjectWithEnumProperty.php
@@ -9,7 +9,7 @@ namespace app\Models;
  */
 class OuterObjectWithEnumProperty {
 
-    /** @var \app\Models\OuterEnumInteger $value */
-    private $value;
+    /** @var int $value */
+    public $value = \app\Models\OuterEnumInteger::NUMBER_0;
 
 }
diff --git a/samples/server/petstore/php-laravel/lib/app/Models/Pet.php b/samples/server/petstore/php-laravel/lib/app/Models/Pet.php
index ae8fd93efc6698a4c0513079b18bfc2a80e10e55..96c232377548b13031715629b84c30ebfb15ded3 100644
--- a/samples/server/petstore/php-laravel/lib/app/Models/Pet.php
+++ b/samples/server/petstore/php-laravel/lib/app/Models/Pet.php
@@ -10,21 +10,21 @@ namespace app\Models;
 class Pet {
 
     /** @var int $id */
-    private $id;
+    public $id = 0;
 
     /** @var \app\Models\Category $category */
-    private $category;
+    public $category;
 
     /** @var string $name */
-    private $name;
+    public $name = "";
 
     /** @var string[] $photoUrls */
-    private $photoUrls;
+    public $photoUrls = [];
 
     /** @var \app\Models\Tag[] $tags */
-    private $tags;
+    public $tags = [];
 
     /** @var string $status pet status in the store*/
-    private $status;
+    public $status = "";
 
 }
diff --git a/samples/server/petstore/php-laravel/lib/app/Models/ReadOnlyFirst.php b/samples/server/petstore/php-laravel/lib/app/Models/ReadOnlyFirst.php
index e914f1ff0085a086bf93463ab1312107a3268a81..04a23e104f51b10071f218c5883abc114d071297 100644
--- a/samples/server/petstore/php-laravel/lib/app/Models/ReadOnlyFirst.php
+++ b/samples/server/petstore/php-laravel/lib/app/Models/ReadOnlyFirst.php
@@ -10,9 +10,9 @@ namespace app\Models;
 class ReadOnlyFirst {
 
     /** @var string $bar */
-    private $bar;
+    public $bar = "";
 
     /** @var string $baz */
-    private $baz;
+    public $baz = "";
 
 }
diff --git a/samples/server/petstore/php-laravel/lib/app/Models/SpecialModelName.php b/samples/server/petstore/php-laravel/lib/app/Models/SpecialModelName.php
index 6ea1fd10ebb495027521e4e386d806ec6676733f..2e9c108eaa8224f83c1b7405e110e2d41e13d388 100644
--- a/samples/server/petstore/php-laravel/lib/app/Models/SpecialModelName.php
+++ b/samples/server/petstore/php-laravel/lib/app/Models/SpecialModelName.php
@@ -10,6 +10,6 @@ namespace app\Models;
 class SpecialModelName {
 
     /** @var int $specialPropertyName */
-    private $specialPropertyName;
+    public $specialPropertyName = 0;
 
 }
diff --git a/samples/server/petstore/php-laravel/lib/app/Models/Tag.php b/samples/server/petstore/php-laravel/lib/app/Models/Tag.php
index fb8469f95615db9ecf6f4fe62f141f8fb9556676..d260b2982a79e3603df2f652efbca5fec671a61c 100644
--- a/samples/server/petstore/php-laravel/lib/app/Models/Tag.php
+++ b/samples/server/petstore/php-laravel/lib/app/Models/Tag.php
@@ -10,9 +10,9 @@ namespace app\Models;
 class Tag {
 
     /** @var int $id */
-    private $id;
+    public $id = 0;
 
     /** @var string $name */
-    private $name;
+    public $name = "";
 
 }
diff --git a/samples/server/petstore/php-laravel/lib/app/Models/User.php b/samples/server/petstore/php-laravel/lib/app/Models/User.php
index 3688537ba8c8356aba90f0a7738b7a78104c5536..a80c8bd77c4c3a69c192a6cd73dfd0f09c573181 100644
--- a/samples/server/petstore/php-laravel/lib/app/Models/User.php
+++ b/samples/server/petstore/php-laravel/lib/app/Models/User.php
@@ -10,27 +10,27 @@ namespace app\Models;
 class User {
 
     /** @var int $id */
-    private $id;
+    public $id = 0;
 
     /** @var string $username */
-    private $username;
+    public $username = "";
 
     /** @var string $firstName */
-    private $firstName;
+    public $firstName = "";
 
     /** @var string $lastName */
-    private $lastName;
+    public $lastName = "";
 
     /** @var string $email */
-    private $email;
+    public $email = "";
 
     /** @var string $password */
-    private $password;
+    public $password = "";
 
     /** @var string $phone */
-    private $phone;
+    public $phone = "";
 
     /** @var int $userStatus User Status*/
-    private $userStatus;
+    public $userStatus = 0;
 
 }