Home >Backend Development >PHP Tutorial >10 string-related PHP code snippets

10 string-related PHP code snippets

WBOY
WBOYOriginal
2016-07-25 08:46:511048browse
1. Automatically remove HTML Tag
In the user form, you You may want to remove any unnecessary HTML tags. This can be done simply using the strip_tags() function:
$text = strip_tags($input, “”);
2
2. Get the text between $start and $end
This is a A function that every website developer should have in their development toolbox: given a string, a start position, and an end position, and returns the text contained between $start and $end.
function GetBetween($content,$start,$end){
$r = explode($start, $content);
if (isset($r[1])){
$r = explode($end, $r[1]);
return $r[0];
}
return ”;
}
3. Convert URL to hyperlink
If you add a URL in the comment form of your WordPress blog, it will be automatically converted into a hyperlink. If you want to implement the same function on your website, you can use the following code:
$url = "Server Operation and Architecture (http://www.ha97.com)";
$url = preg_replace(“#http://([A-z0-9./-]+)#”, ‘$0′, $url);


4. Split the text into an array of 140 characters
As we all know, Twitter only accepts messages within 140 characters. If you're looking to interact with this popular instant messaging site, you'll definitely appreciate this feature, which will allow comments to be truncated to 140 characters.
function split_to_chunks($to,$text){
$total_length = (140 – strlen($to));
$text_arr = explode(” “,$text);
$i=0;
$message[0]=””;
foreach ($text_arr as $word){
if ( strlen($message[$i] . $word . ‘ ‘) <= $total_length ){
if ($text_arr[count($text_arr)-1] == $word){
$message[$i] .= $word;
} else {
$message[$i] .= $word . ‘ ‘;
}
} else {
$i++;
if ($text_arr[count($text_arr)-1] == $word){
$message[$i] = $word;
} else {
$message[$i] = $word . ‘ ‘;
}
}
}
return $message;
}
5. Remove the URL from the string
In order to gain traffic or backlinks, many visitors will post a large number of blog comments containing URL information. This code snippet can effectively prevent it:
$string = preg_replace ('/b(https?|ftp|file)://[-A-Z0-9+&@#/%?=~_|$!:,.;]*[A-Z0-9+&@ #/%=~_|$]/i', ”, $string);
6. Convert the string into an abbreviated title
Creating an abbreviated title (usually called permalink, i.e. a fixed link) is beneficial to SEO , the following function takes a string as a parameter and returns a good abbreviated string. It is concise and effective, worth trying!
function slug($str){
$str = strtolower(trim($str));
$str = preg_replace(‘/[^a-z0-9-]/’, ‘-’, $str);
$str = preg_replace(‘/-+/’, “-”, $str);
return $str;
}
7. Parse CSV files
CSV (comma separated value files) are a simple way to store data and are easy to parse using PHP. If you don’t believe me, you can try the following code snippet.
$fh = fopen(“contacts.csv”, “r”);
while($line = fgetcsv($fh, 1000, “,”)) {
echo “Contact: {$line[1]}”;
}
1
8. Retrieve another string in a string
If a string is contained in another string and must be retrieved, here is a great way:
function contains($ str, $content, $ignorecase=true){
if ($ignorecase){
$str = strtolower($str);
$content = strtolower($content);
}
return strpos($content,$str) ? true : false;
}
9. Check whether a string starts with a specified pattern
Some languages ​​such as Java have a startWith method that allows you to check whether a string starts with a specified pattern. Unfortunately, PHP does not have this built-in function. But we can make enough food and clothing by ourselves, and it’s very simple:
function String_Begins_With($needle, $haystack {
return (substr($haystack, 0, strlen($needle))==$needle);
}
10. Extract email addresses from strings
Ever wonder how those who send spam get their email addresses? It's easy, they just do a simple HTML parsing of the web page to extract the email. This code takes a string as a parameter and prints the contained email address. Warning: Do not use this code to spam!
function extract_emails($str){
// This regular expression extracts all emails from a string:
$regexp = '/([a-z0-9_.-])+@(([a-z0-9-])+.)+([a-z0-9]{2,4})+/i ';
preg_match_all($regexp, $str, $m);
return isset($m[0]) ? $m[0] : array();
}
$test_string = ‘This is a test string…
test1@example.org
Test different formats:
test2@example.org;
foobar
strange formats:
test5@example.org
test6[at]example.org
test7@example.net.org.com
test8@example.org
test9@!foo!.org
foobar
‘;
print_r(extract_emails($test_string));
If you like my article, please follow me on WeChat toceansoft



Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn