JavaScript Editor Javascript validator     Web page editor 


->selectAs() -- Build the select component of a query (usually for joins)


void $DB_DataObject->selectAs ([object | array $columns_or_object [, string $format [, string $table_name]]])


Auto creates select items based on either the current objects column names, the supplied object, or an array.

This is primarily used in conjunciton with joinAdd, to enable the renaming of columns into a fixed format when they are likely to have naming conflicts (like both tables have an 'id' column).

Sending no arguments to selectAs, will reset the current select (usually removing the default *), and build a select list based on the current objects column names.



This function can not be called statically.


Example 39-1. Using selectAs()

// ok lets see what is going on..
$person = new DataObjects_Person;

// to generate " as id , as name ......."

// to generate a restricted list.. "person.age as age , as name"

// using another object. 
$car = new DataObjects_Car;

// this is the first car (
$car->use = 'first';

// using the joinadd add the car..

// now add all the select columns for the car eg. " as car_id, as car_name ...."
$person->selectAs($car, 'car_%s');

// select only a few columns from the car table.
// note you have to use the table name at the end..
$person->selectAs(array('color','topspeed'), 'car_%s','car');

// now the user can have a second car....
$secondcar = new DataObjects_Car;
$secondcar->use = 'second';

// now since we alreay have one car, the sql statement would get messy 
// so we are joining this as the second car "FROM person INNER JOIN car ..... , car as secondcar WHERE .....

// and we can now add all the columns
// " as secondcar_id, as secondcar_name ........
// note that you must use the last field as the SECONDCAR.ID format uses the 'AS' name, rather than the 
// objects real table name 'car'
$person->selectAs($secondcar, 'secondcar_%s','secondcar');


// ok fire of a query...
while ($person->fetch()) {


JavaScript Editor Javascript validator     Web page editor