No desenvolvimento web, é comum encontrar os termos URL e URI, que muitas vezes são usados de forma intercambiável. No entanto, esses conceitos têm significados diferentes e é importante entender as suas distinções.
O que é URI?
URI (Uniform Resource Identifier) é um identificador genérico para recursos na web. Uma URI pode ser dividida em dois tipos principais:
- URN (Uniform Resource Name): Um nome único para um recurso, sem referência ao seu local.
- URL (Uniform Resource Locator): Um identificador que aponta para o local de um recurso na web.
A URI, portanto, é um termo mais abrangente que inclui URLs e URNs.
O que é URL?
URL (Uniform Resource Locator) é um tipo específico de URI que fornece um meio de localizar um recurso na web, incluindo seu protocolo (como http
, https
, ftp
) e o caminho para o recurso.
Exemplo de URL:
$url = "https://www.example.com/path/to/resource";
Neste exemplo:
https
: Protocolowww.example.com
: Nome do domínio (localização)/path/to/resource
: Caminho para o recurso no servidor
Exemplo Prático em PHP
Vamos ver como podemos manipular uma URL em PHP, diferenciando partes que compõem uma URL, que é um tipo de URI.
Exemplo 1: Parseando uma URL
O PHP oferece a função parse_url()
para dividir uma URL em seus componentes:
$url = "https://www.example.com/path/to/resource?query=php";
$parsedUrl = parse_url($url);
print_r($parsedUrl);
A saída será:
Array
(
[scheme] => https
[host] => www.example.com
[path] => /path/to/resource
[query] => query=php
)
Aqui, o scheme
(https), host
(www.example.com), path
(/path/to/resource) e query
(query=php) são partes da URL.
Exemplo 2: Construindo uma URI
Para ilustrar o conceito de URI, considere uma URN simples. Vamos criar uma string que representa uma URN.
$urn = "urn:isbn:0451450523";
echo "A URN é: $urn";
Neste caso, não temos um caminho ou localização, mas sim um identificador único para um recurso (um livro, no caso, identificado pelo ISBN).
Diferença Principal
- URL: Sempre aponta para uma localização onde o recurso pode ser acessado.
- URI: Pode ser qualquer identificador de um recurso, seja ele um local ou um nome.
Conclusão
Compreender as diferenças entre URI e URL é essencial para o desenvolvimento web, especialmente ao manipular recursos e endereços na internet. Embora toda URL seja uma URI, nem toda URI é uma URL. Esperamos que este post tenha esclarecido essas diferenças e mostrado como você pode trabalhar com URLs em PHP.