Det meste av innholdet i nettressursene i dag genereres dynamisk av skripter på serversiden. Men på denne måten vises det meste tekstinformasjon (sideoppsett, stilark, nettstedskart). Bilder, musikk, videoer, arkiver ligger som regel på serveren i form av statiske filer. Noen ganger blir det imidlertid nødvendig å generere lignende data ved hjelp av et skript. Så hvis du trenger å vise et statisk bilde, kan du sette det helt inn i skriptet.
Nødvendig
muligheten til å opprette eller redigere serverskript
Bruksanvisning
Trinn 1
Sett inn disse bildene i skriptet som tekst, som er en del av programkoden. Bruk de mest praktiske datastrukturer og syntaktiske konstruksjoner. Valget bestemmes vanligvis av funksjonene til det programmeringsspråket som brukes. Så i mange tilfeller er det praktisk å sette inn et bilde i et skript som en vanlig tegnstreng, hvis innhold er bildedata kodet med en algoritme som Base64. I PHP kan det se slik ut (2x2 piksler GIF-bilde): $ str = 'R0lGODlhAgACAIAAAAAAAP /// yH5BAAA'. 'AAAALAAAAAACAAIAAAIDDBAFADs ='; Matrisebokstaver brukes også ofte.
Steg 2
Forbered bildet for utdata. Dekod den originale informasjonen om nødvendig. Du bør motta en buffer som inneholder de binære dataene til bildet. For eksempel, i PHP, kan dekoding av strengen gitt i første trinn se slik ut: $ text = base64_decode ($ str);
Trinn 3
I toppteksten til serverens HTTP-respons, legg til et felt som inneholder data om lengden på responsdelen (størrelsen på det viste bildet). Bestem omfanget ved hjelp av funksjoner eller metoder som returnerer lengden på matriser, strenger osv. For eksempel: header ('Content-length:'.strlen ($ text));
Trinn 4
Legg til et felt i HTTP-svaroverskriften på serveren som indikerer mime-typen til det overførte innholdet. For eksempel: header ('Content-type: image / gif'); Innholdstypen må allerede være kjent (bestemt ut fra formatet på det opprinnelige bildet).
Trinn 5
Hvis du trenger å tvinge bildet som skal lagres i stedet for å vises i nettleseren, kan du legge til riktig felt i svarhodet: header ("Content-Disposition: vedlegg; filnavn = my_image.gif");
Trinn 6
Hvis du vil unngå å cache bildet i nettleseren, skriver du inn feltene Pragma og cache-Control med de aktuelle verdiene i HTTP-svaret: header ("Pragma: no-cache"); header ("Cache-Control: no -cache, must-revalidate, no-store "); header (" Cache-Control: pre-check = 0, post-check = 0 ", false); Det er også verdt å gi datoene for den siste endringen og utløpet dato for ressursen. I dette tilfellet må den andre av dem være senere: header ("Utløper: Man, 4 Jan 1993 00:00:01 GMT"); header ("Last-Modified:".gmdate ("D, d MYH: i: s ")." GMT ");
Trinn 7
Form kroppen til serverens HTTP-respons, som er bildedataene. Bruk funksjoner eller metoder for objekter som gir utdata fra binære data uten ytterligere behandling. For eksempel: printf ('% s', $ text);