0

テーブルから名前を表示する PHP ページを作成しました。いくつかの名前が長すぎます。12 文字の場合$nameは作成し、12 文字の後の部分をこれに置き換えたいのです... が、これが私のコードです

$query= mysql_query("SELECT * FROM `table`")or die(mysql_error());
while($arr = mysql_fetch_array($query)){
    $num = mysql_num_rows($query);
    $name= $arr['name'];
    echo '</br>';
    echo $name;
}

どうすればいいですか?

4

4 に答える 4

3

試す:

$name = (strlen($arr['name']) > 12) ? substr($arr['name'],0,12) . "..." : $arr['name'];

これは条件付きの割り当てです。$arr['name']が 12 文字を超える場合は、12 文字に切り詰めて「...」を追加します。それ以外の場合は、フル ネームが使用されます。

于 2013-07-01T17:12:29.637 に答える
2
if (strlen($name) > 12)
    $name = substr($name, 0, 12) . '...';

https://php.net/strlen

https://php.net/substr

于 2013-07-01T17:11:57.340 に答える
1

次のようなことができます。

if( strlen($arr['name']) > 12)
{
 substr($arr['name'],0,12)."...";
}

したがって、コードは次のようになります。

$query= mysql_query("SELECT * FROM `table`")or die(mysql_error());
while($arr = mysql_fetch_array($query)){
$num = mysql_num_rows($query);
$name= $arr['name'];
echo '</br>';
if(strlen($name) > 12)
  {
  substr($name,0,12) . "...";
  }
}
于 2013-07-01T17:13:52.063 に答える
1

あなたはこのようにすることができます: -

<?php
$mystring = "this is a test string to check that";

if( strlen($mystring) >= 12)
{
 $result= substr($mystring,0,12);
 $result .='...';
}
    echo $result;

?>
于 2013-07-01T17:20:36.853 に答える