Changeset 19632
- Timestamp:
- 06/28/09 09:50:27 (8 months ago)
- Files:
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
components/dependency_injection/trunk/lib/sfServiceSimpleXMLElement.php
r19567 r19632 22 22 } 23 23 24 public function getArgumentsAsPhp($name = 'argument', $permanent = false)24 public function getArgumentsAsPhp($name) 25 25 { 26 26 $arguments = array(); 27 27 foreach ($this->$name as $arg) 28 28 { 29 $key = isset($arg['key']) ? (string) $arg['key'] : count($arguments);29 $key = isset($arg['key']) ? (string) $arg['key'] : (!$arguments ? 0 : max(array_keys($arguments)) + 1); 30 30 31 switch ($arg['type']) 31 // parameter keys are case insensitive 32 if ('parameter' == $name) 32 33 { 33 case 'collection': 34 $arguments[$key] = $arg->getArgumentsAsPhp($permanent ? $name : 'argument'); 35 break; 36 case 'string': 37 $arguments[$key] = (string) $arg; 38 break; 39 default: 40 $arguments[$key] = self::phpize($arg); 34 $key = strtolower($key); 41 35 } 42 }43 44 return $arguments;45 }46 47 public function getArgumentsAsPhpForServices($name = 'argument', $permanent = false)48 {49 $arguments = array();50 foreach ($this->$name as $arg)51 {52 $key = isset($arg['key']) ? (string) $arg['key'] : count($arguments);53 36 54 37 switch ($arg['type']) … … 58 41 break; 59 42 case 'collection': 60 $arguments[$key] = $arg->getArgumentsAsPhp ForServices($permanent ? $name : 'argument', $permanent);43 $arguments[$key] = $arg->getArgumentsAsPhp($name); 61 44 break; 62 45 case 'string':

