Prado\Data\SqlMap\Configuration\TSqlMapXmlMappingConfiguration::applyInlineParameterMap PHP 메소드

applyInlineParameterMap() 보호된 메소드

Extract inline parameter maps.
protected applyInlineParameterMap ( $statement, $sqlStatement, $node )
    protected function applyInlineParameterMap($statement, $sqlStatement, $node)
    {
        $scope['file'] = $this->_configFile;
        $scope['node'] = $node;
        $sqlStatement = preg_replace(self::ESCAPED_INLINE_SYMBOL_REGEXP, self::INLINE_PLACEHOLDER, $sqlStatement);
        if ($statement->parameterMap() === null) {
            // Build a Parametermap with the inline parameters.
            // if they exist. Then delete inline infos from sqltext.
            $parameterParser = new TInlineParameterMapParser();
            $sqlText = $parameterParser->parse($sqlStatement, $scope);
            if (count($sqlText['parameters']) > 0) {
                $map = new TParameterMap();
                $map->setID($statement->getID() . '-InLineParameterMap');
                $statement->setInlineParameterMap($map);
                foreach ($sqlText['parameters'] as $property) {
                    $map->addProperty($property);
                }
            }
            $sqlStatement = $sqlText['sql'];
        }
        $sqlStatement = preg_replace('/' . self::INLINE_PLACEHOLDER . '/', self::INLINE_SYMBOL, $sqlStatement);
        $this->prepareSql($statement, $sqlStatement, $node);
    }