我有两个问题
<< 1.>>
我有这样的php打印代码。
echo '<label class="control-label" for="'.to_string($dt->name_comp).'">'.$dt->name_comp.'</label>';
to_string是将my Name生成为my_name的函数,它的工作原理是明确的,使用$ dt-&gt; name_comp生成数据库中的值。
所以......语法必须是类似html的语法:<label class="control-label" for="my_name">Name Component</label>
我想问一下,为什么上面的代码不起作用?为什么 my_name 没有进入 ?
我试过这种方式:
echo '<label class="control-label" for="'. <?php to_string($dt->name_comp); ?>.'">'.$dt->name_comp.'</label>';
但是,同样如此。结果总是这样:<label class="control-label" for=" ">Name Component</label>
当我在firebug中检查它时。因此 my_name 会显示在表单外部,不会进入表单。不知道为什么..
这是to_string()
函数:
function to_string($string) {
$string = preg_replace('/[\'"]/', '', $string);
$string = preg_replace('/[^a-zA-Z0-9]+/', '_', $string);
$string = trim($string, '_');
$string = strtolower($string);
echo $string;
}
&LT;&LT; 2 - ;&GT;
我有像这样的textinput代码:
echo '<input type="text" name="'.to_string($dt->name_comp).'" id="'.to_string($dt->name_comp).'" placeholder="'.$dt->name_comp.'" value="'.$dt['/name_comp/'].'">';
但是,有一个错误:致命错误无法使用workspace_mockup_2 \ Models \ Component类型的对象作为数组我应该在那里输入什么? 需要一些建议..谢谢。
答案 0 :(得分:1)
to_string()
的最后一行应该是:
return $string;
当你这样做时:
echo "something".to_string(something_else);
事件的顺序如下:
to_string(something_else)
被召唤。to_string
回显它创建的字符串。to_string
返回undefined
。"something"
与undefined
连接,结果为"something"
。"something"
得到了回应。这就是为什么to_string
的结果是标签外的回声,因为它在步骤2中回显,而标签在步骤5中回显。