CakePHP
  • Documentation
    • Book
    • API
    • Videos
    • Reporting Security Issues
    • Privacy Policy
    • Logos & Trademarks
  • Business Solutions
  • Swag
  • Road Trip
  • Team
  • Community
    • Community
    • Get Involved
    • Issues (GitHub)
    • Bakery
    • Featured Resources
    • Training
    • Meetups
    • My CakePHP
    • CakeFest
    • Newsletter
    • Linkedin
    • YouTube
    • Facebook
    • Twitter
    • Mastodon
    • Help & Support
    • Forum
    • Stack Overflow
    • Slack
    • Paid Support
CakePHP

C CakePHP 2.3 API

  • Overview
  • Tree
  • Deprecated
  • Version:
    • 2.3
      • 4.2
      • 4.1
      • 4.0
      • 3.9
      • 3.8
      • 3.7
      • 3.6
      • 3.5
      • 3.4
      • 3.3
      • 3.2
      • 3.1
      • 3.0
      • 2.10
      • 2.9
      • 2.8
      • 2.7
      • 2.6
      • 2.5
      • 2.4
      • 2.3
      • 2.2
      • 2.1
      • 2.0
      • 1.3
      • 1.2

Packages

  • Cake
    • Cache
      • Engine
    • Configure
    • Console
      • Command
        • Task
    • Controller
      • Component
        • Acl
        • Auth
    • Core
    • Error
    • Event
    • I18n
    • Log
      • Engine
    • Model
      • Behavior
      • Datasource
        • Database
        • Session
      • Validator
    • Network
      • Email
      • Http
    • Routing
      • Filter
      • Route
    • TestSuite
      • Coverage
      • Fixture
      • Reporter
    • Utility
    • View
      • Helper

Classes

  • AclNode
  • Aco
  • AcoAction
  • Aro
  • BehaviorCollection
  • CakeSchema
  • ConnectionManager
  • I18nModel
  • Model
  • ModelBehavior
  • ModelValidator
  • Permission

Class CakeSchema

Base Class for Schema management

Object
Extended by CakeSchema
Package: Cake\Model
Copyright: Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
License: MIT License
Location: Cake/Model/CakeSchema.php

Properties summary

  • $connection public
    string
    Connection used for read
  • $file public
    string
    File to write
  • $name public
    string
    Name of the schema
  • $path public
    string
    Path to write location
  • $plugin public
    string
    plugin name.
  • $tables public
    array
    Set of tables

Method Summary

  • __construct() public
    Constructor
  • _arrayDiffAssoc() protected
    Extended array_diff_assoc noticing change from/to NULL values
  • _columns() protected
    Formats Schema columns from Model Object
  • _compareIndexes() protected
    Compare two schema indexes
  • _compareTableParameters() protected
    Compare two schema files table Parameters
  • _noPrefixTable() protected
    Trim the table prefix from the full table name, and return the prefix-less table
  • _values() protected
    Formats Schema columns from Model Object
  • after() public
    After callback to be implemented in subclasses
  • before() public
    Before callback to be implemented in subclasses
  • build() public
    Builds schema object properties
  • compare() public
    Compares two sets of schemas
  • generateTable() public

    Generate the code for a table. Takes a table name and $fields array Returns a completed variable declaration to be used in schema classes

  • load() public
    Reads database and creates schema tables
  • read() public
    Reads database and creates schema tables
  • write() public
    Writes schema file from object or options

Method Detail

__construct() public ¶

__construct( array $options = array() )

Constructor

Parameters
array $options optional array()
optional load object properties
Overrides
Object::__construct()

_arrayDiffAssoc() protected ¶

_arrayDiffAssoc( array $array1 , array $array2 )

Extended array_diff_assoc noticing change from/to NULL values

It behaves almost the same way as array_diff_assoc except for NULL values: if one of the values is not NULL - change is detected. It is useful in situation where one value is strval('') ant other is strval(null) - in string comparing methods this results as EQUAL, while it is not.

Parameters
array $array1
Base array
array $array2
Corresponding array checked for equality
Returns
array

Difference as array with array(keys => values) from input array where match was not found.


_columns() protected ¶

_columns( array $Obj )

Formats Schema columns from Model Object

Parameters
array $Obj
model object
Returns
array
Formatted columns

_compareIndexes() protected ¶

_compareIndexes( array $new , array $old )

Compare two schema indexes

Parameters
array $new
New indexes
array $old
Old indexes
Returns
mixed
false on failure or array of indexes to add and drop

_compareTableParameters() protected ¶

_compareTableParameters( array $new , array $old )

Compare two schema files table Parameters

Parameters
array $new
New indexes
array $old
Old indexes
Returns
mixed
False on failure, or an array of parameters to add & drop.

_noPrefixTable() protected ¶

_noPrefixTable( string $prefix , string $table )

Trim the table prefix from the full table name, and return the prefix-less table

Parameters
string $prefix
Table prefix
string $table
Full table name
Returns
string
Prefix-less table name

_values() protected ¶

_values( array $values )

Formats Schema columns from Model Object

Parameters
array $values
options keys(type, null, default, key, length, extra)
Returns
array
Formatted values

after() public ¶

after( array $event = array() )

After callback to be implemented in subclasses

Parameters
array $event optional array()
schema object properties

before() public ¶

before( array $event = array() )

Before callback to be implemented in subclasses

Parameters
array $event optional array()
schema object properties
Returns
boolean
Should process continue

build() public ¶

build( array $data )

Builds schema object properties

Parameters
array $data
loaded object properties

compare() public ¶

compare( array|object $old , array|object $new = null )

Compares two sets of schemas

Parameters
array|object $old
Schema object or array
array|object $new optional null
Schema object or array
Returns
array
Tables (that are added, dropped, or changed)

generateTable() public ¶

generateTable( string $table , array $fields )

Generate the code for a table. Takes a table name and $fields array Returns a completed variable declaration to be used in schema classes

Parameters
string $table
Table name you want returned.
array $fields
Array of field information to generate the table with.
Returns
string
Variable declaration for a schema class

load() public ¶

load( array $options = array() )

Reads database and creates schema tables

Parameters
array $options optional array()
schema object properties
Returns
array
Set of name and tables

read() public ¶

read( array $options = array() )

Reads database and creates schema tables

Options

  • 'connection' - the db connection to use
  • 'name' - name of the schema
  • 'models' - a list of models to use, or false to ignore models
Parameters
array $options optional array()
schema object properties
Returns
array
Array indexed by name and tables

write() public ¶

write( array|object $object , array $options = array() )

Writes schema file from object or options

Parameters
array|object $object
schema object or options array
array $options optional array()
schema object properties to override object
Returns
mixed
false or string written to file

Methods inherited from Object

_mergeVars() protected ¶

_mergeVars( array $properties , string $class , boolean $normalize = true )

Merges this objects $property with the property in $class' definition. This classes value for the property will be merged on top of $class'

This provides some of the DRY magic CakePHP provides. If you want to shut it off, redefine this method as an empty function.

Parameters
array $properties
The name of the properties to merge.
string $class
The class to merge the property with.
boolean $normalize optional true
Set to true to run the properties through Hash::normalize() before merging.

_set() protected ¶

_set( array $properties = array() )

Allows setting of multiple properties of the object in a single line of code. Will only set properties that are part of a class declaration.

Parameters
array $properties optional array()
An associative array containing properties and corresponding values.

_stop() protected ¶

_stop( integer|string $status = 0 )

Stop execution of the current script. Wraps exit() making testing easier.

Parameters
integer|string $status optional 0
see http://php.net/exit for values

dispatchMethod() public ¶

dispatchMethod( string $method , array $params = array() )

Calls a method on this object with the given parameters. Provides an OO wrapper for call_user_func_array

Parameters
string $method
Name of the method to call
array $params optional array()
Parameter list to use when calling $method
Returns
mixed
Returns the result of the method call

log() public ¶

log( string $msg , integer|string $type = LOG_ERR )

Convenience method to write a message to CakeLog. See CakeLog::write() for more information on writing to logs.

Parameters
string $msg
Log message.
integer|string $type optional LOG_ERR

Type of message being written. Either a valid LOG_* constant or a string matching the recognized levels.

Returns
boolean
Success of log write.
See
CakeLog::write()

requestAction() public ¶

requestAction( string|array $url , array $extra = array() )

Calls a controller's method from any location. Can be used to connect controllers together or tie plugins into a main application. requestAction can be used to return rendered views or fetch the return value from controller actions.

Under the hood this method uses Router::reverse() to convert the $url parameter into a string URL. You should use URL formats that are compatible with Router::reverse()

Passing POST and GET data

POST and GET data can be simulated in requestAction. Use $extra['url'] for GET data. The $extra['data'] parameter allows POST data simulation.

Parameters
string|array $url

String or array-based URL. Unlike other URL arrays in CakePHP, this URL will not automatically handle passed and named arguments in the $url parameter.

array $extra optional array()

if array includes the key "return" it sets the AutoRender to true. Can also be used to submit GET/POST data, and named/passed arguments.

Returns
mixed

Boolean true or false on success/failure, or contents of rendered action if 'return' is set in $extra.


toString() public ¶

toString( )

Object-to-string conversion. Each class can override this method as necessary.

Returns
string
The name of this class

Properties detail

$connection ¶

public string

Connection used for read

'default'

$file ¶

public string

File to write

'schema.php'

$name ¶

public string

Name of the schema

null

$path ¶

public string

Path to write location

null

$plugin ¶

public string

plugin name.

null

$tables ¶

public array

Set of tables

array()
OpenHub
Rackspace
Rackspace
  • Business Solutions
  • Showcase
  • Documentation
  • Book
  • API
  • Videos
  • Reporting Security Issues
  • Privacy Policy
  • Logos & Trademarks
  • Community
  • Get Involved
  • Issues (GitHub)
  • Bakery
  • Featured Resources
  • Training
  • Meetups
  • My CakePHP
  • CakeFest
  • Newsletter
  • Linkedin
  • YouTube
  • Facebook
  • Twitter
  • Mastodon
  • Help & Support
  • Forum
  • Stack Overflow
  • Slack
  • Paid Support

Generated using CakePHP API Docs