Подтвердить что ты не робот

Удалить первые 3 символа и последние 3 символа из String PHP

Мне нужно удалить первые 3 буквы строки и последние 3 буквы строки. Я знаю, что я могу использовать substr(), чтобы начать с определенного символа, но если мне нужно снять как первый, так и последний символы, я не уверен, могу ли я действительно использовать это. Какие-либо предложения?

4b9b3361

Ответ 1

Передайте отрицательное значение в качестве аргумента length (третий аргумент), например:

$result = substr($string, 3, -3);

Итак, это:

<?
    $string = "Sean Bright";
    $string = substr($string, 3, -3);
    echo $string;
?>

Выходы:

n Bri

Ответ 2

Использование

substr($var,1,-1)

это всегда будет первым и последним без использования strlen.

Пример:

<?php
    $input = ",a,b,d,e,f,";
    $output = substr($input, 1, -1);
    echo $output;
?>

Вывод:

а, б, г, д, е

Ответ 3

Как указано в других ответах, вы можете использовать одну из следующих функций для достижения своей цели:

Это зависит от количества символов, которые нужно удалить, и если удаление должно быть конкретным. Но, наконец, substr() отлично отвечает на ваш вопрос.

Возможно, кто-то думает об удалении первого/последнего char через разыменования строк. Забудьте, что это не сработает, так как null является char:

<?php
$string = 'Stackoverflow';
var_dump($string);
$string[0] = null;
var_dump($string);
$string[0] = null;
var_dump($string);
echo ord($string[0]) . PHP_EOL;
$string[1] = '';
var_dump($string);
echo ord($string[1]) . PHP_EOL;
?>

возвращает:

string(13) "Stackoverflow"
string(13) "tackoverflow"
string(13) "tackoverflow"
0
string(13) "ackoverflow"
0

И нельзя использовать unset($string[0]) для строк:

Неустранимая ошибка: Невозможно отключить смещения строк в /usr/www/***. php в строке **

Ответ 4

substr($string, 3, strlen($string) - 6)

Ответ 5

Я не знаю php, но вы не можете взять длину строки, начать как позицию 3 и взять длину-6 символов, используя substr?

Ответ 6

$myString='123456789';
$newString=substr($myString,3,-3);