$str=':this is a applepie :) ';
Cara menggunakan PHP , Hapus karakter pertama:
$str=':this is a applepie :) ';
Cara menggunakan PHP , Hapus karakter pertama:
Jawaban:
Untuk menghapus setiap :
dari awal string, Anda dapat menggunakan ltrim :
$str = '::f:o:';
$str = ltrim($str, ':');
var_dump($str); //=> 'f:o:'
:::::
. Terkadang perilaku ini tidak diinginkan.
ltrim('prefixprefix_postfix', 'prefix')
hasil dalam'_postfix';
The substr()
Fungsi mungkin akan membantu Anda di sini:
$str = substr($str, 1);
String diindeks mulai dari 0, dan parameter fungsi ini mengambil cutstart. Jadi buat itu 1, dan char pertama hilang.
false
dikembalikan. Jadi, Anda perlu memeriksa apakah mereka sama jika itu bukan perilaku yang Anda inginkan.
Gunakan substr :
$str = substr($str, 1); // this is a applepie :)
Waktu Exec untuk 3 jawaban:
Hapus huruf pertama dengan mengganti kasing
$str = "hello";
$str[0] = "";
// $str[0] = false;
// $str[0] = null;
// replaced by �, but ok for echo
Waktu pelaksanaan untuk 1.000.000 tes: 0.39602184295654
dtk
Hapus huruf pertama dengan substr ()
$str = "hello";
$str = substr($str, 1);
Waktu pelaksanaan untuk 1.000.000 tes: 5.153294801712
dtk
Hapus huruf pertama dengan ltrim ()
$str = "hello";
$str= ltrim ($str,'h');
Waktu pelaksanaan untuk 1.000.000 tes: 5.2393000125885
dtk
Hapus huruf pertama dengan preg_replace ()
$str = "hello";
$str = preg_replace('/^./', '', $str);
Waktu pelaksanaan untuk 1.000.000 tes: 6.8543920516968
dtk
$str[0] = '';
solusinya dan tidak berhasil. namun itu baik jika Anda kemudian berencana menggunakan variabel misalnya untuk membandingkan >
atau <
itu tidak akan berhasil. Itu masih dianggap `` sebagai + `misalnya $str = 'hello'; $str[0] = ''; var_dump($str); // string(5) 'ello'
var_dump($keyword)
yang menunjukkan panjang karakter sebelumnya .. lalu saya mencoba memotong kata kunci dan kemudian bekerja dengan baik var_dump(trim($keyword))
.. Semoga ini bisa membantu seseorang .. :)
Ini kodenya
$str = substr($str, 1);
echo $str;
Keluaran:
this is a applepie :)
Untuk menghapus Karakter pertama dari string di PHP,
$string = "abcdef";
$new_string = substr($string, 1);
echo $new_string;
Generates: "bcdef"
$str = substr($str, 1);
Lihat contoh manual PHP 3
echo substr('abcdef', 1); // bcdef
catatan:
unset($str[0])
tidak akan berfungsi karena Anda tidak dapat membatalkan bagian dari string: -
Fatal error: Cannot unset string offsets
Setelah tes lebih lanjut, saya tidak merekomendasikan menggunakan ini lagi. Itu menyebabkan masalah bagi saya ketika menggunakan string yang diperbarui dalam permintaan MySQL, dan mengubah untuk substr
memperbaiki masalah. Saya berpikir untuk menghapus jawaban ini, tetapi komentar menyarankan itu entah bagaimana lebih cepat sehingga seseorang mungkin menggunakannya untuk itu. Anda mungkin menemukan pemotongan string yang diperbarui menyelesaikan masalah panjang string.
Terkadang Anda tidak membutuhkan fungsi:
$str[0] = '';
Sebagai contoh:
$str = 'AHello';
$str[0] = '';
echo $str; // 'Hello'
Metode ini memodifikasi string yang ada daripada membuat yang lain.
Anda dapat menggunakan fungsi sbstr ()
$amount = 1; //where $amount the the amount of string you want to delete starting from index 0
$str = substr($str, $amount);
Memangkas kemunculan setiap kata dalam array dari awal dan akhir string + spasi putih dan opsional karakter tunggal tambahan sesuai trim normal ()
<?php
function trim_words($what, $words, $char_list = '') {
if(!is_array($words)) return false;
$char_list .= " \t\n\r\0\x0B"; // default trim chars
$pattern = "(".implode("|", array_map('preg_quote', $words)).")\b";
$str = trim(preg_replace('~'.$pattern.'$~i', '', preg_replace('~^'.$pattern.'~i', '', trim($what, $char_list))), $char_list);
return $str;
}
// for example:
$trim_list = array('AND', 'OR');
$what = ' OR x = 1 AND b = 2 AND ';
print_r(trim_words($what, $trim_list)); // => "x = 1 AND b = 2"
$what = ' ORDER BY x DESC, b ASC, ';
print_r(trim_words($what, $trim_list, ',')); // => "ORDER BY x DESC, b ASC"
?>
Kode ini berfungsi dengan baik untuk saya.
$str = substr($str ,-(strlen($str)-1));
Mungkin, berkontribusi juga dengan jawaban.