0
请原谅,如果我问的是错误的问题或不可能的问题,我是PHP的新手。我有以下PHP代码PHP将动态变量名称修改为静态变量名称
<?php
if ($this->arrCustomFields) {
foreach ($this->arrCustomFields as $field) {
if($field['blnView']) {
echo 'var '.preg_replace('/\s+/', '_', strtolower($field['lbl']->Name)).' = "'.$field['lbl']->Text.'";';
}
}
}
?>
此代码生成以下变量,我在同一页上的JavaScript中使用。
上述VAR hp_modelsvar optic_drive = "No CD/DVD Media Installed"; var power_supply = "No PSU"; var ram = "2 GB"; var web_cam = "No"; var processor = "No Processor Installed"; var tested_by = "FM"; var psu = "None"; var data_storage = "Not Installed"; var grade = "B"; var serial_no = "24234234"; var hp_models = "D2200-VC"
通知=“值”是一个具有动态变量名的变量,我想这个变量转换为静态名称。原因是,如果我正在查看Dell,IBM或其他型号,则此变量名称将动态更改为供应商名称,例如“var ibm_models”,“var dell_models”,“var sony_models”等。我想将这个变量名称转换为静态名称,比如somemodel或prodmodel,而不管供应商。
所以我应该能够使用它像下面的东西。
<?php
echo $_models;
?>
无论供应商名称如何,我都应该能够获取变量的值。因此,对于这个变量,我使用“_”作为分隔符下划线,只有第一部分动态地为每条记录改变,第二部分是模型是静态的。
我希望我能解释得很好。
此代码是非常危险的。您直接将PHP数据转储到JavaScript上下文中。您**必须** json_encode()数据以防止文本中的任何JS元字符造成语法错误并杀死您的JS代码块。至于你的结构。 'var models ['hp'] ='D2200-VC''可能会为您提供更好的服务。 –
那么如何将此动态变量转换为静态变量? – user2107349
你的名字总是以“_models”结尾? – SenseException