Php Object Generator Tutorials
  1. Introduction to POG
  2. Setting up PHP, MySQL etc.
  3. Designing your objects
  4. Generating your code
  5. Description of the generated code
  6. Edit configuration file
  7. The Setup Process
  8. Using the code: Save()
  9. Using the code: Get()
  10. Using the code: SaveNew()
  11. Using the code: GetList()
  12. Using the code: Delete()
  13. Using the code: DeleteList()
  14. Advanced: object relations
  15. Advanced: Set{Parent}()
  16. Advanced: Get{Parent}()
  17. Advanced: Add{Child}()
  18. Advanced: Get{Child}List()
  19. Advanced: Save(deep)
  20. Advanced: Delete(deep)
  21. Advanced: Add{Sibling}()
  22. Advanced: Set{Child}List()
  23. Advanced: Set{Sibling}List()
  24. Advanced: Get{Sibling}List()
  25. Advanced: DeleteList(deep)
  26. Customizing POG-generated code
  27. Customizing: Extending POG Objects
  28. Customizing: Plugins
  29. Examples
  30. Examples: User registration system
  31. Examples: User authentication
  32. Examples: Survey form
  33. Examples: Using POG with AJAX
  34. PDO: Introduction
  35. PDO: SQLite example
  36. PDO: Firebird example
  37. PDO: PostgreSQL example
  38. PDO: MySQL example
  39. PDO: ODBC example
  40. Troubleshooting
  41. Troubleshooting: Data appears encoded
  42. Troubleshooting: Can't regenerate object
  43. Troubleshooting: Can't seem to Save()
  44. Troubleshooting: Can't get object / object attributes from database
  45. Troubleshooting: Can't open zip file on Mac
  46. Troubleshooting: Setup screen is blank
  47. Videos
  48. Appendix: Creating table(s) manually
  49. Appendix: Regenerating objects
  50. Appendix: Generating objects using SOAP
  51. Case Study: Gravity GTD
  52. Case Study: Web Form Factory


Want more Php Object Generator?
Back to the Code Generator
The POG Weblog and RSS feed.
The POG Google group


Advanced: Delete(deep)


When an object is identified as “Parent", POG generates the object with a slightly different Delete CRUD method. The modified Delete method is known as Delete($DEEP). The Delete($DEEP) method extends the functionality of the traditional DELETE method by allowing you to recursively delete all child objects associated with the parent object. By default, parent objects are NOT deleted deep if the $deep parameter is not specified.

When an object is identified as "Sibling", POG generates the object with a slightly different Delete CRUD method. The modified Delete method is known as Delete($DEEP,$ACROSS). The Delete($DEEP,$ACROSS) method extends the functionality of the traditional DELETE method by allowing you to choose whether you want to delete down or across the 'family tree'. If across is set to true and deep is set to false, then all siblings of the current object will be deleted *recursively*. If the sibling object has any children itself, these child objects will not be deleted.

PHP:
//To Delete an object ‘deep’, simply do the following:
$book = new Book( ) ; //create a child object
$book -> title = " State of Fear" ;
$author = new Author ( ) ; //create a parent object
$author -> name = ‘Michael Critchton’ ;
$author -> AddBook($book) ;
$author -> Delete ( t rue) ; //deletes both Author and Book
//Note: Delete(true) different from Delete():

//To Delete an object ‘shallow’, simply do the following:
$book = new Book( ) ; //create a child object
$book -> t i t le = " State of Fear " ;
$author = new Author( ) ; //create a parent object
$author -> name = ‘Michael Critchton’ ;
$author -> AddBook($book) ;
$author -> Delete (false) ; //Deletes only Author object
//Note: Delete(false) is the same as Delete()




POG documentation summary: