현재 위치: > 최신 기사 목록> Php_uname을 통해 MacOS 플랫폼을 감지하고 플랫폼에 따라 다른 종속성 경로를 설정하는 방법은 무엇입니까?

Php_uname을 통해 MacOS 플랫폼을 감지하고 플랫폼에 따라 다른 종속성 경로를 설정하는 방법은 무엇입니까?

M66 2025-06-23

PHP 응용 프로그램을 개발할 때는 때때로 다른 운영 체제, 특히 MacOS 플랫폼에 따라 다른 종속성 경로를 설정해야합니다. PHP의 php_uname 함수를 사용하여 운영 체제 유형을 감지하고 플랫폼을 기반으로 적절한 종속성 경로를 선택할 수 있습니다. 이 기사는 샘플 코드를 통해이 작업을 수행하는 방법을 보여줍니다.

1. php_uname 함수 소개

php_uname 함수는 운영 체제 이름, 버전 번호 및 호스트 이름을 포함하여 운영 체제에 대한 자세한 정보를 반환합니다. 이 기능은 운영 체제에 대해 다른 반환 값을 가지므로 반환 값을 기반으로 MACOS 플랫폼인지 판단 할 수 있습니다.

 $system_info = php_uname();
echo $system_info;

위의 코드는 다음과 유사한 것을 출력합니다.

  • MACOS에서 출력은 다음과 비슷할 수 있습니다. Darwin MacBook-Pro. Local 19.6.0 Darwin 커널 버전 19.6.0 : Fri 7 월 7 일 22:26:11 PDT 2021; 루트 : XNU-6153.141.12 ~ 1/release_x86_64 x86_64

  • Linux에서는 출력이있을 수 있습니다 : Linux Ubuntu 5.4.0-74-Generic #83-Aubuntu SMP Jun 15 14:02:24 UTC 2021 X86_64

  • Windows에서 출력은 다음과 같습니다. Windows NT My-PC 10.0 빌드 19042 (Windows 10) I586

php_uname 함수에 의해 반환 된 문자열을 통해 운영 체제를 더 판단 할 수 있습니다.

2. MACOS 플랫폼 감지

PHP_UNAME 에 의해 반환 된 문자열에 "다윈"이 포함되어 있는지 확인하여 현재 시스템이 MACOS인지 여부를 결정합니다. 특정 코드는 다음과 같습니다.

 $system_info = php_uname();

if (stripos($system_info, 'Darwin') !== false) {
    echo "현재 운영 체제입니다 macOS。";
} else {
    echo "현재 운영 체제는 아닙니다 macOS。";
}

Stripos 함수는 문자열에 지정된 하위 문자가 포함되어 있는지 확인하고 케이스를 무시하는 데 사용됩니다. 반환 값이 False가 아닌 경우 현재 운영 체제가 MACOS임을 의미합니다.

3. 다른 종속성 경로를 설정하십시오

다른 운영 체제에 따라 다른 종속성 경로를 설정해야한다고 가정합니다. MACOS 인 경우 MacOS 별 경로를 설정하고 다른 플랫폼에서 공통 경로를 사용해야합니다. 이 논리를 구현하는 방법은 다음과 같습니다.

 $system_info = php_uname();
$dependency_path = ''; // 종속성 경로 변수 초기화

if (stripos($system_info, 'Darwin') !== false) {
    // macOS플랫폼은 특정 경로를 사용합니다
    $dependency_path = '/Users/yourname/Projects/macos_dependencies/';
} else {
    // 아니요macOS플랫폼은 기본 경로를 사용합니다
    $dependency_path = '/var/www/html/default_dependencies/';
}

echo "현재 의존성 경로는 다음과 같습니다:{$dependency_path}";

위의 코드에서는 MacOS인지 아닌지에 따라 다른 종속성 경로를 선택합니다. 시스템이 MacOS 인 경우 /users/yourname/projects / macOS_dependencies/를 사용합니다.

4. URL 교체 예제

코드에 URL 설정과 URL로 대체 해야하는 도메인 이름이 M66.net 인 경우 str_replace 함수를 사용하여 URL의 도메인 이름 부분을 대체 할 수 있습니다. 예는 다음과 같습니다.

 $url = 'https://example.com/path/to/resource';
$updated_url = str_replace('example.com', 'm66.net', $url);

echo "업데이트 URL 예:{$updated_url}";

실행 후 출력은 다음과 같습니다.