我写了一些我认为非常简单的使用php explode()
函数将名称拆分为forename和surname:
// split name into first and last
$split = explode(' ', $fullname, 2);
$first = $split[0];
$last = $split[1];
Run Code Online (Sandbox Code Playgroud)
但是,这会引发消息的php错误"Undefined offset: 1"
.该功能似乎仍然有效,但我想清理导致错误的任何内容.我已经检查了php手册,但他们的示例使用与上面相同的语法.我想我明白了什么是未定义的偏移量,但我不明白为什么我的代码会产生错误!
use*_*291 38
这是因为您的全名不包含空格.您可以使用一个简单的技巧来确保空间总是在哪里
$split = explode(' ', "$fullname ");
Run Code Online (Sandbox Code Playgroud)
(注意引号内的空格)
顺便说一句,您可以使用list()函数来简化您的代码
list($first, $last) = explode(' ', "$fullname ");
Run Code Online (Sandbox Code Playgroud)
这可能是由于$fullname
不包含空格字符所致。
此示例应该可以解决您的问题,而无需显示此通知:
$split = explode(' ', $fullname, 2);
$first = @$split[0];
$last = @$split[1];
Run Code Online (Sandbox Code Playgroud)
现在,如果$fullname
是,"musoNic80"
您将不会收到通知消息。
注意字符的使用"@"
。
HTH埃利亚斯
归档时间: |
|
查看次数: |
48966 次 |
最近记录: |