⊗ppPsPtAb 37 of 84 menu

Normalizarea căilor absolute în analiza sintactică în PHP

Când se realizează analiza sintactică a site-urilor, de obicei trebuie să obținem adrese ale linkurilor, căi către imagini, fișiere CSS și JavaScript.

Pentru scopurile noastre, ar fi convenabil ca aceste adrese să conțină URL-ul complet împreună cu numele domeniului, aproximativ astfel:

<a href="http://targ.loc/dir/sub/page.html">text</a>

În viața reală, totuși, numele domeniului în căile de pe site este de obicei omis și căile arată aproximativ astfel (cu slash-ul la început):

<a href="/dir/sub/page.html">text</a>

Să efectuăm normalizarea unei astfel de căi. Să presupunem că în variabilă este stocat domeniul la care ne adresăm:

<?php $domain = 'http://targ.loc'; ?>

Să presupunem că am extras de asemenea calea din href linkului:

<?php $href = '/dir/sub/page.html'; ?>

Să-i efectuăm normalizarea:

<?php $norm = $domain . $href; ?>

Obțineți toate href de pe pagină și efectuați normalizarea acestora:

<a href="/page.html">text</a> <a href="/dir/page.html">text</a> <a href="/dir/sub/page.html">text</a>

Obțineți toate href de pe pagină și efectuați normalizarea acestora, acolo unde este necesar:

<a href="/page.html">text</a> <a href="/dir/page.html">text</a> <a href="/dir/sub/page.html">text</a> <a href="http://targ.loc/dir/sub/page.html">text</a>

Obțineți toate src de pe pagină și efectuați normalizarea acestora, acolo unde este necesar:

<img src="/img.png"> <img src="/images/img.png"> <img src="http://targ.loc/images/img.png">

Obțineți toate căile și efectuați normalizarea acestora:

<link rel="stylesheet" href="/styles.css"> <script src="/scripts.js"></script>

Obțineți toate căile și efectuați normalizarea acestora:

div { background: url('/images/img.png'); }

Obțineți toate căile și efectuați normalizarea acestora:

div { background: url(/img.png); background: url('/images/img.png'); background: url("/images/img.png"); background: url("http://targ.loc/images/img.png"); }
defrhimsbn