Laravel 5.2 Split String名字姓氏

Dev*_*Wol 5 php arrays laravel laravel-5

我有一个从全名表单传递的字符串.

在我的数据库中,我存储了名字和姓氏..我使用以下内容拆分了字符串:

$name = explode(" ", $request->name);
$lastname = array_pop($name);
$firstname = implode(" ", $name);
Run Code Online (Sandbox Code Playgroud)

但是,如果用户没有在字段中输入姓氏,则上述操作无效,因为姓氏成为第一个姓氏.

我错过了什么吗?

ayn*_*ber 15

这就是我用来分割名字的原因:

$splitName = explode(' ', $name, 2); // Restricts it to only 2 values, for names like Billy Bob Jones

$first_name = $splitName[0];
$last_name = !empty($splitName[1]) ? $splitName[1] : ''; // If last name doesn't exist, make it empty
Run Code Online (Sandbox Code Playgroud)


rdi*_*diz 6

我通常这样做,这与您所做的非常相似(使用array_shift而不是array_pop):

$split = explode(" ", $request->name);

$firstname = array_shift($split);
$lastname  = implode(" ", $split);
Run Code Online (Sandbox Code Playgroud)

适用于单个名称、多个名称和空字符串。没有条件。