Regexp::MultiLanguage::PHP - PHP dialect for Regexp::MultiLanguage.


Regexp-MultiLanguage documentation Contained in the Regexp-MultiLanguage distribution.

Index


Code Index:

NAME

Top

Regexp::MultiLanguage::PHP - PHP dialect for Regexp::MultiLanguage.

VERSION

Top

Version 0.03

SYNOPSIS

Top

This module should not be used directly. Please read the documentation for Regexp::MultiLanguage

AUTHOR

Top

Robby Walker, robwalker@cpan.org

COPYRIGHT & LICENSE

Top


Regexp-MultiLanguage documentation Contained in the Regexp-MultiLanguage distribution.
package Regexp::MultiLanguage::PHP;

use base qw(Regexp::MultiLanguage::BaseDialect);
use strict;
use warnings;

our $VERSION = 0.03;

sub wrap {
	my ($this, $code) = @_;
	return "<?php\n\n" . $code . "\n\n?>";
}

sub match_regex {
	my ($this, $regex) = @_;
	
	if ( $regex =~ /^m/ ) {
		$regex = substr $regex, 1;
	}	
	
	$regex =~ s/([\\''""])/\\$1/g;
	return 'preg_match("' . $regex . '", $text)';
}

sub comment_start {
	return '#';
}

sub make_function {
	my ($this,$name,$expr) = @_;
	my $prefix = $this->{'prefix'};
	return "function $prefix$name( \$text ) { return $expr; }\n";
}

sub function_call {
	my ($this,$name) = @_;
	my $prefix = $this->{'prefix'};
	return "$prefix$name( \$text )";
}

1;