Học về các hàm xử lý chuỗi trong php

Học về các hàm xử lý chuỗi trong php là vấn đề được nhiều lập trình viên quan tâm, bởi những kiến thức trên trường lớp là không đủ, vì vậy bài Học về các hàm xử lý chuỗi trong php sẽ chia sẻ tới bạn nhiều thông tin hữu ích

Mọi người vẫn hỏi tôi về việc học lập trình nói chung và PHP nói riêng có cần năng khiếu hay quá khó để tiếp cận hay không. Thì tôi có thể trả lời rằng, học lập trình cũng như việc bạn học tiếng Anh hay bất kỳ một ngôn ngữ khác, bởi lập trình...là ngôn ngữ của máy tính, để máy tính đọc và máy tính thực hiện theo yêu cầu của mình, bạn thích là học được.

Việc xử lý chuỗi trong PHP rất là quan trọng vì dữ liệu hiển thị trên trang web luôn luôn ở dạng chuỗi, vì thế nếu bạn nắm vững và xử lý nhuần nhuyễn thì sẽ giúp bạn ít tốn công sức và thời gian hơn mà web chạy lại nhanh nữa. Và bên dưới đây tôi sẽ liệt kê các hàm xử lý chuỗi trong php thông dụng hay sử dụng nhất, tuy nhiên chúng ta cần hiểu một số quy tắc trong chuỗi trước đã.

1. Quy tắc trong chuỗi

Nếu chuỗi được đặt trong dấu nháy kép "" thì các ký tự nháy kép " bên trong chuỗi phải thêm dấu gạch chéo đằng trước nó.

Ví dụ:

 

  echo "Nam nói\"Cậu ấy đang ăn tối\" "; 

 

Nếu chuối được đặt trong dấu nháy kép thì trong chuỗi ta có thể truyền biến vào mà không cần dùng phép nối chuỗi.

Ví dụ:

 

  $str = "đang ăn tối";
  echo "Nam nói\"Cậu ấy $str\" "; 

 

Nếu chuỗi được đặt trong dấu nháy đơn '' thì các ký tự nháy đơn ' bên trong chuỗi phải thêm dấu gạch chéo đằng trước nó.

Ví dụ:

 

  echo 'Hoidapcode's a website learning online'; 

 

2. Các hàm xử lý chuỗi hay sử dụng

Sau đây là các hàm chúng ta hay sử dụng để xử lý chuỗi trong PHP.

addcslashes ($str, $char_list)

Hàm này sẽ thêm dấu gạch chéo (\) đằng trước những ký tự trong chuỗi $str mà ta liệt kê ở $char_list.

 

  // a..z là gồm các từ từ a => z  
echo (addcslashes('Hoidapcode.com FREETUTS.NET', 'a..z'));  // kết quả: \f\r\e\e\t\u\t\s.\n\e\t
echo '<br />';     // a..zA..Z là gồm các từ từ a => z và A => Z  
echo (addcslashes('Hoidapcode.com FREETUTS.NET', 'a..zA..Z')); 

 

addslashes ( $str )

Hàm này sẽ thêm dấu gách chéo trước những ký tự (‘, “, \) trong chuỗi $str.

 

  echo addslashes ("Hoidapcode's a website learning online");  // Kết quả là Hoidapcode's a website learning online 

 

stripslashes ($str)

Hàm này ngược với hàm addslashes, nó xóa các ký tự \ trong chuỗi $str.

 

  echo stripslashes("Mot so ham 'xu ly chuoi' trong PHP");  // Kết quả Mot so ham 'xu ly chuoi' trong PHP 

 

crc32 ( $str )

Hàm này sẽ chuyển chuỗi $str thành một dãy số nguyên (có thể âm hoặc dương tùy theo hệ điều hành).

 

  echo crc32 ('Hoidapcode.com');  // kết quả: -838644060 

 

explode ( $delimiter , $string)

Hàm này sẽ chuyển một chuỗi $string thành một mảng các phần tử với ký tự tách mảng là $delimiter.

 

  // Chuỗi cần chuyển<br />  
$str = 'Hoidapcode.com is a website free for you';     // Mỗi khoảng trắng sẽ là một phần tử trong mảng<br />  
var_dump(explode(' ', $str));     /*Kết quả  array      0 => 'Hoidapcode.com',      1 => 'is',      2 => 'a' ,      3 => 'website',      4 => 'free',      5 => 'for' ,      6 => 'you' */ 

 

implode($delimiter, $piecesarray);

Hàm này ngược với hàm explode, nó chuyển một mảng $piecesarray thành chuỗi và mỗi phần tử cách nhau bởi chuỗi $delimiter

 

  echo implode(' ', array(      'Hoidapcode',      'xin',      'chào',      'các',      'bạn'  ));  // kêt quả là Hoidapcode xin chào các bạn 

 

ord ( $string )

Hàm này trả về mã ASCII của ký tự đầu tiên trong chuỗi $string.

 

  echo ord ('Ab');  // kết quả: 65 

 

strlen($string)

Hàm này đếm số ký tự của chuỗi $string.

 

  echo strlen('Hoidapcode.com');  // kết quả: 12 

 

str_word_count($str)

Hàm này trả về số từ trong chuỗi $str.

 

  echo str_word_count('Hoidapcode xin chào các bạn');  // kết quả là 5 

 

str_repeat( $str, int $n )

Hàm này lặp chuỗi $str $n lần.

 

  echo str_repeat( 'Hello', 5 );  // Kết quả là HelloHelloHelloHelloHello 

 

str_replace( $chuoi_tim, $chuoi_thay_the, $chuoi_nguon )

Hàm này tìm kiếm và thay thế chuỗi.

 

  $str = 'Hoidapcode Xin Chào Các Bạn';
  $str = str_replace( 'Hoidapcode', 'Hoidapcode.com', $str );
  echo $str; // kết quả là Hoidapcode.com Xin Chào Các Bạn 

 

Để thay thế nhiều chuỗi ta có thể dùng mảng để truyền vào

 

  $str = 'Hoidapcode Xin Chào Các Bạn';
  $str = str_replace( array('Hoidapcode', 'Xin Chào'), array('Hoidapcode.com', 'Hello'), $str );
  echo $str; // kết quả là Hoidapcode.com Hello Các Bạn 

 

md5( $str)

Hàm này mã hóa chuỗi thành một dãy 32 ký tự (mã hóa md5).

 

  echo md5('Hoidapcode.com');  // Kết quả: 83617175fd8cf470d4af657a28def98e 

 

sha1($string)

Hàm này mã hóa chuỗi thành một dãy 40 ký tự (mã hóa sha1)

 

  echo sha1('Hoidapcode.com');  // kết quả 8d9fa09de2e997d8fbb544326b84d1f894cd3ca3 

 

htmlentities($str)

Hàm này chuyển các thể html trong chuỗi $str sang dạng thực thể của chúng (html sẽ ko còn tác dụng nên bạn có thể echo ra bên ngoài).

 

  echo htmlentities('<b>Hoidapcode.com</b>');  // Kết quả <b>Hoidapcode.com</b> 

 

html_entity_decode($string)

Ngược lại với htmlentities, hàm này chuyển ngược các ký tự dạng thực thể HTML sang dạng ký tự của chúng.

 

  $str = htmlentities('<b>Hoidapcode.com</b>');
  echo 'Entity: ' . $str . '<br/>';
  echo 'Decode: ' . html_entity_decode($str); 

 

htmlspecialchars( $string)

Tương tự như htmlentities.

htmlspecialchars_decode($string)

Tương tự như html_entity_decode.

strip_tags( $string, $allow_tags )

Hàm này bỏ các thẻ html trong chuỗi $string được khai báo ở $allow_tags.

 

  echo strip_tags('<b>Hoidapcode.com</b>', 'b'); 

 

substr( $string, $start, $length )

Hàm này lấy một chuỗi con nằm trong chuỗi $str bắt đầu từ ký tự thứ $start và chiều dài $length.

 

  echo substr( 'Hoidapcode.com',  0, 8);  // Kết quả Hoidapcode 

 

strstr( $string, $ky_tu_cho_truoc )

Tách một chuỗi bắt đầu từ $ky_tu_cho_truoc cho đến hết chuỗi.

 

  echo strstr('Hoidapcode.com Xin Chào', 'Xin');  // Kết quả: Xin Chào 

 

strpos($str, $chuoi_tim )

Tìm vị trí của chuỗi $chuoi_tim trong chuỗi $str, kết quả trả về false nếu không tìm thấy.

 

  echo strpos('Hoidapcode.com chào các bạn', 'chào');  // kết quả 13 

 

strtolower($str);

Chuyển tất cả các ký tự chuỗi $str sang chữ thường

strtoupper($string );

Chuyển tất cả các ký tự chuỗi $str sang chữ hoa

ucfirst( $string )

Chuyển ký tự đầu tiên chuỗi $string sang chữ hoa

ucfirst( $string )

Chuyển ký tự đầu tiên trong chuỗi $string sang chữ thường

ucwords( $string )

Chuyên từ đầu tiên trong chuỗi $string sang chữ hoa

trim($string, $ky_tu);

Xóa ký tự $ky_tu nằm ở đầu và cuối chuỗi $str, nếu ta không nhập $ky_tu thì mặc định nó hiểu là xóa khoảng trắng.

 

echo trim(' Hoidapcode.com ');  // kết quả: 'Hoidapcode.com'     
echo trim('Hoidapcode.comh');  // kết quả: 'Hoidapcode.com' 

 

ltrim($string, $ky_tu);

Tương tự như trim nhưng chỉ xóa bên trái

rtrim($string, $ky_tu)

Tương tự như trim nhưng chỉ xóa bên phải

nl2br($string)

Chuyển các ký tự xuống dòng “\n” thành thẻ

json_decode($json, $is_array)

Dùng để chuyển chuỗi dạng JSON sang các đối tượng mảng hoặc object. Nếu $is_array có giá trị false thì hàm sẽ chuyển một chuỗi $json thành một Class (object), ngược lại nếu $is_array có giá trị true thì sẽ chuyển chuỗi $json thành một mảng.

json_encode($array_or_object)

Chuyển một mảng hoặc mội đối tượng (classs) sang chuỗi dạng JSON

3. Lời kết

Tôi không thể liệt kê kết các hàm xử lý chuỗi trong php được vì bản thân tôi cũng không biết hết, nên tôi chỉ liệt kê các hàm hay sử dụng thôi, nếu các bạn muốn tìm hiểu thêm các hàm xử lý chuỗi có thể vào đây để tham khảo. Bài tiếp theo ta sẽ tìm hiểu các hàm xử lý mảng trong php


Hy vọng với bài viết về Học về các hàm xử lý chuỗi trong php đã giải đáp giúp bạn phần nào về kiến thức lập trình PHP. Như tôi đã nói, ngôn ngữ lập trình không quan trọng bằng tư duy giải thuật, tư duy logic để giải quyết vấn đề.

Với những năm trước đây, lập trình viên là một cái nghề khó và kén chọn người học, đồng nghĩa với việc thu nhập hàng tháng của các lập trình viên luôn cao. Còn những năm gần đây, thì lập trình là môn học phổ thông, và ai cũng nên học một ngôn ngữ lập trình nào đó.

Nếu bạn còn bất kỳ câu hỏi nào trong việc học lập trình online, hãy gửi yêu cầu cho tôi qua email hoidapcode.com@gmail.com hoặc để lại comment bên dưới, tôi sẽ giải đáp trong vòng 24 giờ!

Blog hoidapcode.com là blog được tổng hợp tự động các bài học, thông tin về lập trình trên mạng internet. Nếu bạn có ý kiến hoặc đóng góp về bài viết này, hãy liên hệ với tôi!