diff --git a/compiler/cpp/src/generate/t_php_generator.cc b/compiler/cpp/src/generate/t_php_generator.cc
index 34a3aae..d8db9fa 100644
--- a/compiler/cpp/src/generate/t_php_generator.cc
+++ b/compiler/cpp/src/generate/t_php_generator.cc
@@ -581,7 +581,9 @@
 
   // Generate the three main parts of the service (well, two for now in PHP)
   generate_service_interface(tservice);
-  generate_service_rest(tservice);
+  if (rest_) {
+    generate_service_rest(tservice);
+  }
   generate_service_client(tservice);
   generate_service_helpers(tservice);
   generate_service_processor(tservice);
diff --git a/compiler/cpp/src/generate/t_php_generator.h b/compiler/cpp/src/generate/t_php_generator.h
index 86051b0..1df23ec 100644
--- a/compiler/cpp/src/generate/t_php_generator.h
+++ b/compiler/cpp/src/generate/t_php_generator.h
@@ -21,9 +21,10 @@
  */
 class t_php_generator : public t_oop_generator {
  public:
-  t_php_generator(t_program* program, bool binary_inline=false) :
+  t_php_generator(t_program* program, bool binary_inline=false, bool rest=false) :
     t_oop_generator(program),
-    binary_inline_(binary_inline) {
+    binary_inline_(binary_inline),
+    rest_(rest) {
     if (binary_inline_) {
       T_PHP_DIR = "gen-phpi";
     } else {
@@ -161,6 +162,11 @@
    */
   bool binary_inline_;
 
+  /**
+   * Generate a REST handler class
+   */
+  bool rest_;
+
 };
 
 #endif
diff --git a/compiler/cpp/src/main.cc b/compiler/cpp/src/main.cc
index 41305d5..949558e 100644
--- a/compiler/cpp/src/main.cc
+++ b/compiler/cpp/src/main.cc
@@ -124,6 +124,7 @@
 bool gen_xsd = false;
 bool gen_php = false;
 bool gen_phpi = false;
+bool gen_rest = false;
 bool gen_perl = false;
 bool gen_erl = false;
 bool gen_recurse = false;
@@ -526,14 +527,14 @@
 
     if (gen_php) {
       pverbose("Generating PHP\n");
-      t_php_generator* php = new t_php_generator(program, false);
+      t_php_generator* php = new t_php_generator(program, false, gen_rest);
       php->generate_program();
       delete php;
     }
 
     if (gen_phpi) {
       pverbose("Generating PHP-inline\n");
-      t_php_generator* phpi = new t_php_generator(program, true);
+      t_php_generator* phpi = new t_php_generator(program, true, gen_rest);
       phpi->generate_program();
       delete phpi;
     }
@@ -627,6 +628,8 @@
         gen_php = true;
       } else if (strcmp(arg, "-phpi") == 0) {
         gen_phpi = true;
+      } else if (strcmp(arg, "-rest") == 0) {
+        gen_rest = true;
       } else if (strcmp(arg, "-py") == 0) {
         gen_py = true;
       } else if (strcmp(arg, "-rb") == 0) {
