我的htaccess文件在url之后显示我的$ _GET变量

My .htaccess file works fine however it shows my $_GET variables after the url, for example:

Currently it shows this:example.com/en/home?lang=en It should be just example.com/en/home

This is my RewriteRule:

RewriteRule ^(en|es)/(home|inicio)/?$ index.php?lang=$1

If I delete the variables after url, it works too.

I'm using the boilerplate's .htaccess file.
My rewrite engine is On and the mod_rewrite is activated.

Can somebody help me?

These are my other RewriteRules:

 RewriteRule ^(en|es)/(event|evento)/(\d+)-(.*)?$ event.php?id=$3
 RewriteRule ^(en|es)/videos/?$ videos.php?lang=$1  

My links are like this:
$lang = $_GET["lang"] ? $_GET["lang"] : "en";
<a href="<?php $lang; ?>/videos/">All Videos</a>
And url bar shows: example.com/en/videos?lang=en, I mean this problem occurred in all the website