XpressEngine Core  1.11.2
 All Classes Namespaces Files Functions Variables Pages
InsertColumnsTag.class.php
Go to the documentation of this file.
1 <?php
2 /* Copyright (C) NAVER <http://www.navercorp.com> */
3 
12 {
13 
19  var $columns;
20 
27  function __construct($xml_columns)
28  {
29  $this->columns = array();
30 
31  if(!$xml_columns)
32  {
33  return;
34  }
35 
36  if(!is_array($xml_columns))
37  {
38  $xml_columns = array($xml_columns);
39  }
40 
41  foreach($xml_columns as $column)
42  {
43  if($column->name === 'query')
44  {
45  $this->columns[] = new QueryTag($column, TRUE);
46  }
47  else if(!isset($column->attrs->var) && !isset($column->attrs->default))
48  {
49  $this->columns[] = new InsertColumnTagWithoutArgument($column);
50  }
51  else
52  {
53  $this->columns[] = new InsertColumnTag($column);
54  }
55  }
56  }
57 
63  function toString()
64  {
65  $output_columns = 'array(' . PHP_EOL;
66  foreach($this->columns as $column)
67  {
68  $output_columns .= $column->getExpressionString() . PHP_EOL . ',';
69  }
70  $output_columns = substr($output_columns, 0, -1);
71  $output_columns .= ')';
72  return $output_columns;
73  }
74 
80  function getArguments()
81  {
82  $arguments = array();
83  foreach($this->columns as $column)
84  {
85  $arguments[] = $column->getArgument();
86  }
87  return $arguments;
88  }
89 
90 }
91 /* End of file InsertColumnsTag.class.php */
92 /* Location: ./classes/xml/xmlquery/tags/column/InsertColumnsTag.class.php */