This is my first PHP script (although I like to think I'm a good general coder).  The script accepts a number from the user, uses it to generate a regular expression, and then returns all dictionary words that match that expression. It's currently live here, and I'd appreciate any comments on style, security, best practices, and even efficiency. Please ignore the Html for now - it's got a WordPress template to be inserted into later on. <html><head><title>Major Analysis Number Encoder</title></head><body>    <H1>Tool for finding keywords for major analysis</h1>    This tool uses the numbering system shown by Derren Brown in the    excellent book    <a        href=http://www.amazon.co.uk/Tricks-Mind-Derren-Brown/dp/1905026269>Trick        of the mind</a>. For a (much better) tool that uses the older    numbering system see    <a href=http://www.rememberg.com/>http://www.rememberg.com/</a><br>    <form action=majorEncoder.php method=post>        <label for=firstname>Number to encode (at least three digits            please):</label> <input type=text id=targetNumber            name=targetNumber /><br /> <input type=submit            value=Generate results name=submit />    </form><?phpif ($_POST != null) {    $target = $_POST ['targetNumber'];    if (strlen ( $target ) >= 3) {        $f = '[waeiouyc]?';        $regex = '/^' . $f . $target;        echo 'You entered the target' . $target . '<br><br>';        $regex = str_replace ( '1', 'l' . $f, $regex );        $regex = str_replace ( '2', 'n' . $f, $regex );        $regex = str_replace ( '3', 'm' . $f, $regex );        $regex = str_replace ( '4', 'r' . $f, $regex );        $regex = str_replace ( '5', '[fv]' . $f, $regex );        $regex = str_replace ( '6', '[bp]' . $f, $regex );        $regex = str_replace ( '7', 't' . $f, $regex );        $regex = str_replace ( '8', '[sc]h' . $f, $regex );        $regex = str_replace ( '9', '[gd]' . $f, $regex );        $regex = str_replace ( '0', '[sz]' . $f, $regex );        $lines = file ( 'words.txt' );        $fl_array = preg_grep ( $regex . '$/', $lines );        if (sizeof ( $fl_array ) > 0) {            echo 'Exact matches: <br>';            foreach ( $fl_array as $element ) {                echo $element . '<br>';            }            echo '<br>';        }        $fl_array = preg_grep ( $regex . '/', $lines );        if (sizeof ( $fl_array ) > 0) {            echo 'Matches that allow trailing characters: <br>';            foreach ( $fl_array as $element ) {                echo $element . '<br>';            }        } else {            echo No matches found for the input $target;        }    } else {        echo 'Please enter at least three digits<br>';    }}?></body></html>
Generate regular expression based on inputted number
php;regex