Múltiplos Uploads com PHP, Mysql e Ajax - #4 htaccess e parseUrl
27/10/2019Na vídeo-aula de hoje realizaremos a configuração do nosso arquivo htaccess e criaremos a TraitParseUrl que trabalhará diretamente na url digitada pelo usuário.
Setando o cabeçalho utf-8 no PHP
Antes de mais nada, setaremos na nossa index.php o cabeçalho utf-8, para tanto basta inserir na primeira linha da index.php o seguinte código:
header("Content-Type: text/html; charset=utf-8");
Configurando o .htaccess
A configuração no htaccess visa facilitar o trabalho com urls amigáveis no nosso projeto. No arquivo .htaccess então inseriremos o seguinte código:
RewriteEngine On
Options All -Indexes
DirectoryIndex index.php
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ /index.php?url=$1 [QSA,L]
No código acima, tudo o que for digitado pelo usuário na url será passado para o php como um GET['url'].
Criando a TraitParseUrl
A TraitParseUrl visa transformar os dados digitados pelo usuário em um array. Essa trait servirá de base para outras classes do nosso sistema.
<?php
namespace Traits;
trait TraitParseUrl{
#Criar um array com a url digitada pelo usuário
public static function parseUrl($par=null)
{
$url=explode("/",$_GET['url'],FILTER_SANITIZE_URL);
if(!is_null($par))
{
if(array_key_exists($par,$url)){
return $url[$par];
}else{
return false;
}
}else{
return $url;
}
}
}
Caso você queira testar se a parseUrl() está funcionando, coloque o código abaixo na sua index.php:
use Traits\TraitParseUrl;
class ClassTeste{
use TraitParseUrl;
public function __construct()
{
var_dump($this->parseUrl());
}
}
$teste=new ClassTeste();
Sucesso nos códigos e na vida!