>  기사  >  백엔드 개발  >  중간 변수를 추가하는 대신 서버 메서드를 직접 호출할 수 없는 이유는 무엇입니까?

중간 변수를 추가하는 대신 서버 메서드를 직접 호출할 수 없는 이유는 무엇입니까?

WBOY
WBOY앞으로
2024-02-09 09:36:111130검색

중간 변수를 추가하는 대신 서버 메서드를 직접 호출할 수 없는 이유는 무엇입니까?

PHP에서는 왜 중간 변수를 추가하는 대신 서버 메소드를 직접 호출할 수 없나요? 이것은 일반적인 질문입니다. PHP 편집자 Apple이 대신 답변해 드립니다. PHP에서는 일반적으로 프런트엔드 페이지를 사용하여 백엔드 서버와 상호 작용합니다. 서버 메서드를 직접 호출하면 해커가 악의적인 작업을 수행하는 데 사용되는 등 일부 보안 위험이 발생할 수 있습니다. 보안을 강화하기 위해 중간 변수의 개념을 도입합니다. 프런트 엔드 요청을 서버에 보내고 서버는 중간 변수의 값을 기반으로 해당 작업을 수행함으로써 잠재적인 보안 위험을 효과적으로 줄일 수 있습니다. 또한 중간 변수를 사용하면 코드의 유지 관리성과 확장성이 높아져 코드가 더 명확해지고 이해하기 쉬워집니다. 요약하자면, 중간 변수를 추가하는 것은 코드의 품질과 신뢰성을 향상시킬 수 있는 안전하고 신뢰할 수 있는 방법입니다.

질문 내용

mqtt용 클라이언트를 작성 중입니다. mqtt.OnConnectHandler에 대한 콜백을 작성했습니다. 인쇄 서버의 연결 주소를 쓰고 싶습니다.

으아악

그래서 직접 사용할 수는 없다는 것을 알게 되었습니다. 왜? 그것들은 같은 것이 아닌가? 왜 중간 변수만 수신에 사용할 수 있나요?

저는 두 가지 방법을 시도해봤습니다. 당신은 단 한 번만 성공합니다. 둘 다 괜찮을 거라 생각했어요.

해결 방법

이것은 Servers 方法是用指针接收器声明的。这意味着为了调用 Servers수신자의 주소를 지정할 수 있어야 하기 때문입니다.

https://www.php.cn/link/753a043674f0193523abc1bbce678686

임시 변수는 주소를 지정할 수 없습니다. 여기:

으아악

c.OptionsReader() 返回一个不可寻址的值,因此您无法使用该值作为接收者来调用 Servers。当您将 c.OptionsReader 的返回值分配给一个变量时,它就变得可寻址,并且您可以使用该变量调用 Servers() .

위 내용은 중간 변수를 추가하는 대신 서버 메서드를 직접 호출할 수 없는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 stackoverflow.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제