"경고: mysqli_query()에서는 매개변수 1이 mysqli가 될 것으로 예상하며, null이 제공됩니다." 이해
사용자 정의 CMS를 만드는 과정에서 , 당신은 다음과 같은 두려운 오류 메시지를 접했을 수도 있습니다: "경고: mysqli_query()는 매개변수 1이 MySQLi이어야 하며 null이 입력되어야 합니다." 이 실망스러운 문제는 종종 PHP 함수 내의 변수 범위에 대한 오해로 인해 발생합니다.
오류 원인
이 오류는 getPosts() 함수가 MySQLi 연결 개체를 저장하는 $con 변수에 액세스하지만 해당 함수 범위 내에서는 액세스할 수 없습니다. 이는 $con이 getPosts() 함수 외부에 정의되어 있기 때문입니다.
해결책: 연결을 종속성으로 전달
이 문제를 해결하려면 getPosts() 함수에 대한 연결 개체를 종속성으로 사용합니다. 이렇게 하면 함수가 연결에 액세스하고 필요한 데이터베이스 작업을 수행할 수 있습니다.
function getPosts(mysqli $con) { // Code to query the database using $con }
추가 오류 방지
잠재적인 문제를 최소화하려면 다음을 사용하는 것이 좋습니다. 연결 오류를 처리하고 예외를 발생시키는 코드:
mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT); // throw exceptions $con = mysqli_connect("localhost", "xxxx", "xxxx", "xxxxx"); getPosts($con);
추가 팁
위 내용은 내 `mysqli_query()` 함수가 MySQLi 연결 개체 대신 Null 값을 받는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!