2012-08-31 50 views
5

Tôi không hiểu tùy chọn độ dài trong câu lệnh PDO PARAM_*.PDO PARAM_STR và chiều dài

Độ dài có biểu thị số lượng ký tự được yêu cầu hay không?

Ví dụ:

$sth->bindParam(2, $color, PDO::PARAM_STR, 12); 

Điều này đòi hỏi 12 ký tự, hoặc là này hạn chế nó đến 12 ký tự? Hoặc, tôi hoàn toàn hiểu lầm điều này đang làm gì?

+0

Phần nào của mô tả trong sách hướng dẫn là khó để bạn hiểu cụ thể? * "** length ** - Độ dài của kiểu dữ liệu. Để chỉ ra rằng tham số là tham số OUT từ một thủ tục lưu sẵn, bạn phải thiết lập chiều dài một cách rõ ràng." * - http://php.net/manual/en/ pdostatement.bindparam.php – hakre

+1

@hakra - là nó GIỚI HẠN đến 12 ký tự, hay nó YÊU CẦU 12 ký tự. –

+0

Theo dõi trên Q này - có độ dài bằng _characters hoặc trong _bytes_ không? Tôi không thể tìm thấy bất cứ điều gì mà phân biệt hai. Rõ ràng nó chỉ quan trọng nếu bạn đang sử dụng các ký tự nhiều byte, đó chính là lý do tại sao tôi cần phải biết. Tôi đang nghiêng về phía giả định byte, vì một giá trị quá lớn dựa trên byte có vẻ an toàn hơn một giá trị quá ngắn dựa trên ký tự có thể cắt ngắn. – ashnazg

Trả lời

5

Đó là dấu hiệu về số lượng dữ liệu bạn muốn nhận trong tham số đầu ra, máy chủ sẽ không gửi nhiều hơn số này.

Vì vậy, để trả lời câu hỏi của bạn, đó là giới hạn thay vì yêu cầu.

Các vấn đề liên quan