PHP의 별도 클래스에서 MySQLi를 활용하는 방법
소개
PHP에서 업그레이드 5.6에서 7.0으로 전환하려면 MySQL에서 MySQLi로 전환해야 하며, 이로 인해 기존 설정이 중단될 수 있습니다. 이 문서에서는 별도의 클래스에서 MySQLi 연결에 액세스하려고 할 때 발생하는 문제를 다룹니다.
문제
프로그래머가 데이터베이스 클래스에서 생성된 MySQLi 연결에 액세스하려고 시도했습니다. API 클래스에서 연결을 호출할 때 내부 서버 오류(500)가 발생합니다. 그러나 API 클래스 내에서 직접 연결하면 문제가 해결되었습니다.
솔루션
몇 가지 권장 변경 사항으로 문제를 해결할 수 있습니다.
예제 코드:
database.php:
<code class="php">mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT); $db = new mysqli("localhost", "DBUserName", "UserPassword", "SelectedDB"); $db->set_charset('utf8mb4');</code>
myapi.php:
<code class="php">class MyAPI { protected $db; public function __construct($db, $request_uri, $postData, $origin) { $this->db = $db; } }</code>
app.php:
<code class="php">require 'database.php'; require 'myapi.php'; $api = new MyAPI($db, $request_uri, $postData, $origin);</code>
위 내용은 다음은 질문 형식을 염두에 두고 MySQLi 문제에 초점을 맞춘 몇 가지 제목 옵션입니다. **직접적이고 간결함:** * **별도의 클래스에서 내 MySQLi 연결에 액세스할 수 없는 이유는 무엇입니까?** * **MyS의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!