我是 php 的初学者。我想从全名中提取名字和姓氏。以下是我的代码:-
<?php
$str= "fname lname";
$len=strlen($str);
$s="";
for($i=0;i<=$len;$i++)
{
$sub=substr($str,$i,($i+1));
if($sub!=" ")
{
$s=s+$sub;
}
else {break;}
}
echo $s;
?>
Run Code Online (Sandbox Code Playgroud)
这段代码的问题是循环无限运行,导致了致命错误。任何帮助将不胜感激。
这是一种快速简便的方法。
$name = 'John Smith';
list($firstName, $lastName) = explode(' ', $name);
echo $firstName;
echo $lastName;
Run Code Online (Sandbox Code Playgroud)
但是如果你想考虑中间名等,
$name = 'John Mark Smith';
$name = explode(' ', $name);
$firstName = $name[0];
$lastName = (isset($name[count($name)-1])) ? $name[count($name)-1] : '';
Run Code Online (Sandbox Code Playgroud)
第二种方法会更好,因为它也适用于 1 个名称。