2010-05-28 41 views
6

Có thể chỉ định rằng MySQLi gửi bất kỳ lỗi và cảnh báo nào tới chỉ thị 'error_log' mặc định của PHP không? Tôi dường như không thể tìm thấy bất kỳ tùy chọn lỗi cho đặc tả lớp, và tôi không muốn xử lý lỗi bằng tay như sau:Xử lý lỗi MySQLi

if ($result = $mysqli->query("...")) { } 
else 
    handle $mysqli->error; 

Trả lời

5

Vâng, một cách sẽ được ghi đè lên lớp:

Sau đó, chỉ sử dụng như bình thường, ngoại trừ thay vì tạo kết nối qua new MySQLi(), hãy sử dụng new myMySQLi(). Khác với việc xử lý lỗi, nó sẽ chạy giống nhau. Tôi làm điều này khá thường xuyên, để ném ngoại lệ về lỗi và thêm chức năng bổ sung vào MySQLi ...

+0

xin chào cảm ơn bạn đã trả lời. Tôi cho rằng tôi có thể làm điều đó nếu đó là lựa chọn duy nhất, nhưng có vẻ lạ với tôi rằng lỗi do mysqli ctor tạo có thể được ghi vào error_log mặc định, nhưng bất kỳ lỗi nào xảy ra trong khi sử dụng đối tượng mysqli phải được xử lý thủ công! – Spoonface