programing

치명적 오류: 정의되지 않은 함수 socket_create()를 호출합니다.

oldcodes 2023. 8. 2. 09:22
반응형

치명적 오류: 정의되지 않은 함수 socket_create()를 호출합니다.

내 코드는 다음과 같습니다.

if( ($this->master=socket_create(AF_INET,SOCK_STREAM,SOL_TCP)) < 0 )

    {
    die("socket_create() failed, reason: ".socket_strerror($this->master));
    }

웹 소켓과 연결을 만드는 php 파일을 실행할 때 치명적인 오류가 발생했습니다. if($this->master=create_create(AF_) 줄에 있는 정의되지 않은 함수 socket_create(socket_create)로 호출합니다.INET, SOK_STREAM, SOL_TCP) < 0 )

따라서 클라이언트 페이지를 실행할 때 브라우저에 Socket Status: 3 (Closed)이 표시되기 때문에 웹 소켓을 연결할 수 없고 소켓에서 응답 메시지를 받을 수 없습니다.

무엇이 빠졌는지 아십니까?잘 부탁드립니다.

소켓 PHP 확장을 설치(또는 활성화)해야 합니다. http://www.php.net/manual/en/sockets.installation.php

일반적인 Windows XAMPP 설치의 경우 C:\xampp\php\ext 디렉토리에 php_sockets.dll이 있을 수 있습니다.C:\xampp\php 디렉토리의 php.ini로 이동하여 다음을 변경하기만 하면 됩니다.;extension=php_sockets.dll로.extension=php_sockets.dll.

xampp 7.3.9 소켓이 이미 설치되어 있는 경우.xampp\filename\ext를 선택하면 xampp 제어판에서 php.ini 파일을 열고 extension=filename에서 (;)을 제거하면 php_filename.dll을 얻을 수 있습니다.

를 엽니다.php.ini서버 환경의 파일 및 제거;부터;extension=sockets작동하지 않으면 다운로드해야 합니다.socketPHP용 확장자를 입력합니다.extphp 설치 경로의 디렉터리입니다.http 서버를 다시 시작하면 모든 것이 작동합니다.

OpenSuse 또는 SUSE를 사용하는 경우 다음 단계를 수행합니다.

php7이 아직 설치되지 않은 경우 설치합니다.

zypper in php7

php7을 설치한 경우 다음을 사용하여 업데이트합니다.

zypper update php7

php7 소켓 설치

zypper in php7-sockets

때때로 xampp(wamp 또는 ...)의 버전이 CLI와 다를 수 있습니다.올바른 버전을 사용하기 위해 먼저 php --ini를 사용하는 것이 좋습니다.

또한 이 문제를 해결하기 위해 당신은 당신의 xampp를 열고 셸을 사용할 수 있습니다.

이 오류가 발생했습니다..env파일이 제대로 설정되지 않았습니다.다음이 있는지 확인합니다..env유효한 데이터베이스 로그인 자격 증명이 있는 파일입니다.

언급URL : https://stackoverflow.com/questions/6137823/fatal-error-call-to-undefined-function-socket-create

반응형