-1
나는 php와 mysql을 가지고 놀고 있으며 서로 다른 두 가지 연결 방법을 사용했다. OOP 스타일이나 절차 스타일을 사용할 수 있습니다. 나는 OOP에 처음 온 사람이다.OOP 프로그래밍 대 프로 시저 스타일 프로그래밍
문서 (http://us1.php.net/manual/en/mysqli.construct.php )를 보면 아래의 객체 지향 스타일이 표시됩니다.
if (mysqli_connect_error()) {
는 OOP 스타일 내에서 절차 적 스타일을 사용하는 것이 아닌가 :
<?php
class foo_mysqli extends mysqli {
public function __construct($host, $user, $pass, $db) {
parent::__construct($host, $user, $pass, $db);
if (mysqli_connect_error()) {
die('Connect Error (' . mysqli_connect_errno() . ') '
. mysqli_connect_error());
}
}
}
$db = new foo_mysqli('localhost', 'my_user', 'my_password', 'my_db');
echo 'Success... ' . $db->host_info . "\n";
$db->close();
?>
내 질문 라인에 대해 무엇입니까? 이것이 OOP 스타일을 사용하지 않는 경우 사용할 함수입니다.
if (parent::connect_error()) {
if (mysqli::connect_error()) {
또는
나는 모두를 시도했지만 그들은 작동하지 않습니다 : 그것은 무엇인가 할 수 없습니다.
그래서 $ mysqli-> connect_error를 mysqli_connect_error()와 같은 장소에서 사용할 수 있어야합니까? ... 나는 그것을 시도하고 다른 오류 메시지가 나타납니다. – user3015018
Ok ... 나는 복사 한 코드 위에 "PHP는 5.2.9와 5.3.0까지 $ connect_error가 깨졌습니다."라고 말하는 "공식적인"방법입니다. " $ mysqli-> connect_error는 작동해야합니다 ... 그러나 PHP 5.3.3에서 $ connect_error는 여전히 고장난 것으로 보입니다. – user3015018
프로그래밍 스타일을 고려할 때 메모리 시스템에 대해서도 생각해 볼 수 있습니다. 의미 OOP 언어가 절차 언어보다 메모리를 어떻게 처리합니까? – BDR