在循环构造表时使用php RTRIM函数
我在一个页面上构建了一个表单,在这里我为这些字段提供DB值,最终结果是允许“成员用户”进行相应的更新 我在修剪尾部“/”时遇到困难。我正在尝试使用RTRIM() 获取我的数据的查询:在循环构造表时使用php RTRIM函数,php,Php,我在一个页面上构建了一个表单,在这里我为这些字段提供DB值,最终结果是允许“成员用户”进行相应的更新 我在修剪尾部“/”时遇到困难。我正在尝试使用RTRIM() 获取我的数据的查询: `$m_q = "SELECT * FROM members where memid='$m_memid'";` `$b_result = mysql_query($m_q);` 循环通过带有预填充数据的生成我的表的代码: while($row=mysql\u fetch\u assoc($b\u result)
`$m_q = "SELECT * FROM members where memid='$m_memid'";`
`$b_result = mysql_query($m_q);`
循环通过带有预填充数据的生成我的表的代码:
while($row=mysql\u fetch\u assoc($b\u result)){
$m\u userinfo.=“\r\n名字”
$m_userinfo.=”;……
我遇到的问题是没有任何内容被修剪。在将语法切换到以下位置时:
{$row[rtrim('firstname')]}
我看不到任何变化。您在数组索引之外执行此操作,否则PHP会将其解释为数组索引本身(例如,在第一种情况下,整个字符串'rtrim(firstname')):
while($row=mysql\u fetch\u assoc($b\u result))
{
$trimmed=rtrim($row['firstname'],'/');
$m_userinfo.=“\r\n名字”;
$m_userinfo.=“”;
}
您可以在数组索引之外执行此操作,否则PHP会将其解释为数组索引本身(例如,在第一种情况下,整个字符串“rtrim(firstname)”):
while($row=mysql\u fetch\u assoc($b\u result))
{
$trimmed=rtrim($row['firstname'],'/');
$m_userinfo.=“\r\n名字”;
$m_userinfo.=“”;
}
值={rtrim($row['firstname'],'/')}
值={rtrim($row['firstname'],'/')}
在从数据库检索期间进行修剪的更好方法。请尝试以下操作
"SELECT TRIM(TRAILING '/' FROM `columname` ) AS fname, other columns FROM tableName"
参考:
在从数据库检索期间进行修剪的更好方法。请尝试以下操作
"SELECT TRIM(TRAILING '/' FROM `columname` ) AS fname, other columns FROM tableName"
参考:
我认为使用单引号字符串和点连接会更简单。如果需要,可以将表达式放在“$trimmed.”所在的点之间。我喜欢在使用字符串之前简化变量
<?php
while ($row = mysql_fetch_assoc($b_result))
{
$trimmed = rtrim($row['firstname'],'/');
$m_userinfo .= '<tr class="logreg">' . "\r\n" . '<td><b>First Name</b></td>';
$m_userinfo .= '<td><input type="text" name="firstname" value="' . $trimmed . '"/></td></tr>';
}
?>
有时我可能会这样做。(听说过埃雷多克吗?)
我认为使用单引号字符串和点连接会更简单。如果愿意,可以将表达式放在“$trimmed.”的点之间。我喜欢在处理字符串之前简化变量
<?php
while ($row = mysql_fetch_assoc($b_result))
{
$trimmed = rtrim($row['firstname'],'/');
$m_userinfo .= '<tr class="logreg">' . "\r\n" . '<td><b>First Name</b></td>';
$m_userinfo .= '<td><input type="text" name="firstname" value="' . $trimmed . '"/></td></tr>';
}
?>
有时我可能会这样做。(听说过埃雷多克吗?)
或者干脆$trimmed=rtrim($row['firstname'],“/”);
@diEcho谢谢,我跳过了他定义要修剪的字符的部分…:/。更正了我的回答为什么“value=\“{$trimmed}\”,而不仅仅是“value=\$trimmed”“?再次感谢!这正是我想要的。我没有从文档中收集到。谢谢!或者干脆$trimmed=rtrim($row['firstname']),“/”;
@diEcho谢谢,我跳过了他定义要修剪的字符的部分…:/。更正了我的回答为什么“value=\”{$trimmed}\”,而不仅仅是“value=\“$trimmed”’?再次感谢!这正是我想要的。我不是从文档中收集到的。谢谢!你知道吗,这是正确的答案。在数据库中这样做比在PHP中更好,不?+1你知道吗,这是正确的答案。在数据库中这样做比在PHP中更好,不?+1
<?php
while ($row = mysql_fetch_assoc($b_result))
{
$trimmed = rtrim($row['firstname'],'/');
$m_userinfo .= <<<EOT
<tr class="logreg">
<td><b>First Name</b></td>
<td><input type="text" name="firstname" value="$trimmed"/></td></tr>
EOT;
}
// Read the manual about Heredoc if you don't know about it.
?>