2011-11-13 40 views
5

Tùy thuộc vào trang hiện tại, tôi muốn thay đổi css của mô-đun menu đã chọn và làm cho những người khác khác nhau, v.v. Tất cả trong khi xây dựng động trang trước khi tải.Xây dựng tên biến trong PHP ra khỏi hai biến

Vấn đề của tôi là tôi có một serie các biến đi bởi cấu trúc này:

$css_(NAME_OF_MODULE) 

Để biết những gì biến phải được thiết lập, tôi có một biến khác tôi nhận được trong thông số của chức năng này, gọi là

$chosen_menu 

Nói $chosen_Menu = "C1", tôi muốn thêm nội dung vào $css_C1. Vì vậy, những gì tôi muốn là tạo ra một tên biến trong tổng số 2 biến, tên $css_C1

Tôi đã thử:

${$css_.$chosen_menu} = "value"; 

Nhưng nó không có vẻ để làm việc. Bất kỳ đầu mối?

+0

Tại sao bạn sử dụng $ css_ thay vì $ css? – Dimme

+0

Tại sao không? Có lý do gì để không? EDIT: Đã xảy ra lỗi trong câu hỏi. –

+6

Tại sao bạn không chỉ sử dụng một mảng kết hợp? – delnan

Trả lời

4

Đó có lẽ sẽ không chỉ làm việc. PHP hỗ trợ đầy đủ mặc dù, vì vậy một cái gì đó như thế này sẽ làm việc.

$varName = $css."_".$chosen_menu; 
$$varName = "value"; 

Nếu không, nó có thể sẽ được cố gắng để giải thích $css_ như một tên biến trong mẫu mã thứ hai của bạn, vì vậy chỉ cần thay đổi điều đó để $css."_".$chosen_menu.

0

Tôi không chắc chắn nếu tôi giúp bạn đúng, nhưng làm thế nào về điều này:

${$css."_".$chosen_menu} = "value"; 
1
$nr = 1;   
     ${'name' . $nr} = 20 ;   
     var_dump($name1); 
Các vấn đề liên quan