Տեղեկատվություն

Գտնելով PHP փաստաթղթի արմատը

Գտնելով PHP փաստաթղթի արմատը



We are searching data for your request:

Forums and discussions:
Manuals and reference books:
Data from registers:
Wait the end of the search in all databases.
Upon completion, a link will appear to access the found materials.

PHP փաստաթղթի արմատը այն պանակն է, որտեղ աշխատում է PHP սցենարը: Սցենար տեղադրելիս վեբ մշակողները հաճախ պետք է իմանան փաստաթղթի արմատը: Չնայած PHP- ով գրված շատ էջեր գործարկվում են Apache սերվերի վրա, որոշներն աշխատում են Microsoft IIS- ի տակ Windows- ով: Apache- ն ընդգրկում է շրջակա միջավայրի փոփոխական, որը կոչվում է DOCUMENT_ROOT, բայց IIS- ը ոչ: Արդյունքում, կա PHP փաստաթղթի արմատը տեղակայելու երկու եղանակ:

Գտեք PHP փաստաթղթի արմատը Apache- ի տակ

Փաստաթղթի արմատներին տեխնիկական աջակցություն ուղարկելու փոխարեն և սպասում եք, որ ինչ-որ մեկը կպատասխանի, կարող եք օգտագործել մի ստանդարտ PHP սցենար `getenv ()- ով, որն Apache սերվերների վրա դյուրանցում է տրամադրում փաստաթղթի արմատին:

Կոդի այս մի քանի տողերը վերադարձնում են փաստաթղթի արմատը:

Գտեք PHP փաստաթղթի արմատը IIS- ի տակ

Microsoft- ի ինտերնետային տեղեկատվական ծառայությունները ներկայացվել են Windows NT 3.5.1- ի հետ և այն ներառված է Windows- ի մեծ մասի թողարկումներից այն ժամանակվանից, ներառյալ Windows Server 2016 և Windows 10. Այն չի տրամադրում դյուրանցում փաստաթղթի արմատին:

IIS- ում ներկայումս կատարվող սցենարի անունը գտնելու համար սկսեք այս կոդով.

տպել getenv («SCRIPT_NAME»);

որը վերադառնում է արդյունք, որը նման է հետևյալի.

/product/description/index.php

որը սցենարի ամբողջական ճանապարհն է: Դուք չեք ցանկանում ամբողջական ճանապարհը, պարզապես ֆայլի անունը SCRIPT_NAME- ի համար: Այն ստանալու համար օգտագործեք.

տպել realpath (բազայի անուն (getenv ("SCRIPT_NAME")));

որն արդյունք է վերադառնում այս ձևաչափով.

/usr/local/apache/share/htdocs/product/description/index.php

Կայքին առնչվող ֆայլին հղվող ծածկագիրը հանելու և փաստաթղթի արմատ հասնելու համար օգտագործեք հետևյալ ծածկագիրը ցանկացած սցենարի սկզբում, որը պետք է իմանա փաստաթղթի արմատը:

$ localpath = getenv ("SCRIPT_NAME");

$ absolutepath = realpath ($ localPath);

// շտկեք Windows- ի կտրվածքները

$ absolutepath = str_replace ("", "/", $ absolutepath);

$ docroot = substr ($ absolutepath, 0, strpos ($ absolutepath,

$ localpath));

// օգտագործման օրինակ

ներառել ($ docroot. "/ ներառում է / config.php");

Այս մեթոդը, չնայած ավելի բարդ է, գործում է ինչպես IIS, այնպես էլ Apache սերվերների վրա: