2010-04-09 34 views
5

Tôi tự hỏi nếu có ai có giải pháp đệ quy để chuyển đổi mảng thành chuỗi.Mảng PHP thành chuỗi tương đương

Đây là những gì tôi muốn nói:

Một mảng $args có các nội dung sau:

Array 
(
    [0] => $hello 
    [1] => 411px 
    [Jeeves] => Array 
     (
      [compiling] => 1 
     ) 

) 

Kết quả sau khi gọi arr_to_string($args):

array($hello,"411px", "Jeeves" => array("compiling" => 1)); 

Lưu ý: Nó công nhận $ đăng nhập trước và do đó không phải dd báo giá. Nó làm tương tự cho các con số.

Bất kỳ ai có bất kỳ giải pháp nào hoặc có thể hướng tôi đi đúng hướng?

Cảm ơn! Matt Mueller

+0

Chơi với mã và tạo dữ liệu của nó luôn là trò chơi nguy hiểm. Lập trình viên nên tránh những trường hợp như vậy. Hầu hết thời gian, tốt hơn hết là xử lý dữ liệu dưới dạng dữ liệu, ví dụ như trong định dạng XML. –

Trả lời

16

Hình như bạn đang sau

  • var_export - Đầu ra hoặc trả về một chuỗi đại diện được phân tách của một biến

Điều đó sẽ không cung cấp cho bạn $ hello mặc dù, vì $ hello không thể nằm trong một mảng. Nó luôn luôn chỉ là giá trị của biến, không phải là tên biến. Nếu bạn muốn '$ hello', hãy đặt nó vào các dấu nháy đơn khi chèn nó vào mảng, ví dụ: chèn nó như là một chuỗi, không phải là một biến.

+0

Chà. PHP không bao giờ hết ngạc nhiên với tôi. Nó có chức năng cho mọi thứ. Cảm ơn người đàn ông đã phát hiện ra viên đá quý này. – Matt

+0

Ồ và về ký hiệu $. Tôi đang tìm cách để đánh giá nó sau này (khi biến được biết) - đó là lý do tại sao nó không nên có dấu nháy đơn xung quanh nó. – Matt

+2

Nếu bạn muốn một đại diện nhỏ gọn hơn về các nội dung mảng, hãy thử mã hóa dưới dạng JSON với json_encode() hoặc thử serialize() cho một định dạng có thể sử dụng lại nhiều nhất bởi PHP. – selfawaresoup

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