使用PHP将字符串拆分为两个相等长度的部分

我需要将一个字符串拆分成两个相等长度的部分.字符串可以包含空格,逗号或任何内容.我已经引用并尝试了链接http://www.testingbrain.com/php-tutorial/php-explode-split-a-string-by-string-into-array.html中的explode语句的代码示例,但是它没有显示任何用于以相等长度分割的样本.

还有一件事,虽然分裂的话不应该被打破.

解决方法:

这将分裂而不会破坏文字,尽可能在文本的一半,但它可能会分裂为任何其他字符(,,.,@ etc)

$data = "Split a string by length without breaking word"; //string

if (strlen($data) % 2 == 0) //if lenhth is odd number
    $length = strlen($data) / 2;
else
    $length = (strlen($data) + 1) / 2; //adjust length

for ($i = $length, $j = $length; $i > 0; $i--, $j++) //check towards forward and backward for non-alphabet
{
    if (!ctype_alpha($data[$i - 1])) //forward
    {
        $point = $i; //break point
        break;
    } else if (!ctype_alpha($data[$j - 1])) //backward
    {
        $point = $j; //break point
        break;
    }
}
$string1 = substr($data, 0, $point);
$string2 = substr($data, $point);

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...