Class Erubis::Ephp
In: erubis/engine/ephp.rb
Parent: Engine

engine for PHP

Methods

Public Instance methods

[Source]

# File erubis/engine/ephp.rb, line 48
    def add_expr_debug(src, code)
      code.strip!
      s = code.gsub(/\'/, "\\'")
      src << "<?php error_log('*** debug: #{s}='.(#{code}), 0); ?>"
    end

[Source]

# File erubis/engine/ephp.rb, line 44
    def add_expr_escaped(src, code)
      src << "<?php echo #{escaped_expr(code)}; ?>"
    end

[Source]

# File erubis/engine/ephp.rb, line 40
    def add_expr_literal(src, code)
      src << "<?php echo #{code.strip}; ?>"
    end

[Source]

# File erubis/engine/ephp.rb, line 65
    def add_postamble(src)
      # empty
    end

[Source]

# File erubis/engine/ephp.rb, line 23
    def add_preamble(src)
      # empty
    end

[Source]

# File erubis/engine/ephp.rb, line 54
    def add_stmt(src, code)
      src << "<?php"
      src << " " if code[0] != ?\ #
      if code[-1] == ?\n
        code.chomp!
        src << code << "?>\n"
      else
        src << code << "?>"
      end
    end

[Source]

# File erubis/engine/ephp.rb, line 31
    def add_text(src, text)
      src << escape_text(text)
    end

[Source]

# File erubis/engine/ephp.rb, line 27
    def escape_text(text)
      return text.gsub!(/<\?xml\b/, '<<?php ?>?xml') || text
    end

[Source]

# File erubis/engine/ephp.rb, line 35
    def escaped_expr(code)
      @escape ||= 'htmlspecialchars'
      return "#{@escape}(#{code.strip})"
    end

[Validate]