我有阵列
[Company] => Demo Company 1
[First Name] => Test
[Last Name] => Lead 1
[Designation] => This is testing title 1
[Email] => email1@yopmail.com
[Phone] => 242377
Run Code Online (Sandbox Code Playgroud)
我使用了extract()函数,所以所有索引值都将成为变量名,我也使用{},因为变量名中有空格.但我不知道为什么它不起作用:(这$ {'First Name'}返回空白...下面是我的代码
foreach($vals as $value){
extract($value);
echo '<tr><td><a href="edit.php?id='.$LEADID.'">'.${'First Name'}.' '.${"Last Name"}.'</a></td><td>'.$Company.'</td><td>'.$Phone.'</td><td>'.$Email.'</td></tr>';
}
Run Code Online (Sandbox Code Playgroud)
变量名称不能包含空格.供参考,请阅读变量手册:
有效的变量名称以字母或下划线开头,后跟任意数量的字母,数字或下划线.作为正则表达式,它将表示为:'[a-zA-Z_\x7f-\xff] [a-zA-Z0-9_\x7f-\xff]*'
如果我是你,我只是在阵列上$value使用较短的名字,所以不要使用$v或类似.您还可以使用printf使代码更具可读性:
foreach($vals as $v) {
printf('<tr><td><a href="edit.php?id=%d">%s %s</a></td><td>%s</td><td>%s</td><t\
d>%s</td></tr>',
$LEADID,
$v['First Name'],
$v['Last Name'],
$v['Company'],
$v['Phone'],
$v['Email']);
}
Run Code Online (Sandbox Code Playgroud)