Numbers, floating point, and Boolean are value types, English: int, float, bool, so you know how to use them.
For example: $fa=3.14;
Strings and arrays are reference types, which means they are placed on the stack as addresses. When reassigned, the address in the stack changes direction. , the original pointer is lost or recycled, English: string, array.
For example: $str="string";$arr=array("a"=>"Number","b"=>"Group");//array() is an array Assignment function, there are more than a thousand such functions in PHP, and generally less than 200 are commonly used, I think.
String operations:
Example 2: String merging and addition
Copy code The code is as follows:
$str = 1;
echo $str .= ""; //The number is converted into a string and then merged, the result is: "1".
echo "
";
echo $str += "1 yuan"; //Convert strings into numbers and then add them, such as "1XXX" is converted into number 1, the result is: 2.
echo "
";
?>
Example 3: String case change
Copy code The code is as follows:
$str="12345ABc";
echo strtolower($str);//Change to lower case, result: "12345abc" .
echo "
";
echo strtoupper($str);//Change to lowercase, result: "12345ABC".
echo "
";
?>
Example 4: String length, intercepting substrings (Chinese and English)
Copy code The code is as follows:
$str = "String 2";
echo mb_strlen($str, "UTF -8"); //Function that returns the length of the string. The second parameter is the encoding. Since the page is encoded in UTF-8, it is like this. If omitted, the number of bytes occupied by memory (ASCII) is returned, which is 10. Result 4
echo "
";
echo mb_substr($str, 1, 2, "UTF-8"); //Return character interception, 1 means interception starting from the "character" address, 2 To intercept 2 "UTF-8" encoded characters, the result is: "string".
echo "
";
/**
* Knowledge point: Now let’s start with functions. Each function has () as a stack call. There are 0 or more parameters in (), which can be customized and have default values. Keywords such as echo do not have ().
* Many books use GB2312 encoding, and it is very troublesome to get the length and substring. Here is a reference to the implementation principle of the mb Chinese string extension library without the above:
*/
function my_mb_strlen($str, $code = "UTF-8") // Define a new function, $str is Parameters that must be passed in.
{$num= 0;
if ($code == "UTF-8")
{
$str = iconv("UTF-8", "GB2312", $str); //Convert to GB2312 encoding, and the ord function returns the corresponding ASCII value to determine whether the Chinese character ends in each byte.
for($i = 0;$i < strlen($str);$i++) // Here strlen($str) returns the number of bytes occupied by memory equivalent to mb_strlen($str)
{
if (ord($str[$i]) > 0xa0)$i++; //$str[$i] corresponds to i byte of memory. If you directly use UTF-8 to judge, it will be more complicated because of the diversity of encodings. UTF-8 is a commonly used encoding for web pages, and UTF-16 (Unicode) is a windows encoding.
$num++;
}
}
else
{
$num = "Encoding not implemented";
} //If you are interested, check the information yourself
return $num;
}
echo my_mb_strlen($str) . ";" . my_mb_strlen($str, "GB2312") . "
"; //This page is encoded in UTF-8, you But it said that the incoming string 3 is GB2312, even if the function is implemented, it cannot be correct.
?>
Example 5: Substring search and replacement
Copy code The code is as follows:
$str = "String 4";
echo mb_strpos($str, 'String 4', 0, "UTF-8"); // Find the first substring position found starting from 0, result: 2. If it cannot be found, return empty (=""); if the last two parameters are not required, return 6.
echo "
";
echo mb_strstr($str, 'string', 0, "UTF-8"); //Intercept the first substring found starting from 0 to the end, Result: "String 4". If not found, return empty (=""); if the last two parameters are not required, return the same =strstr($str,'string').
echo "
";
echo str_replace("4", "Not 4", $str); //String replacement, result: "String is not 4".
echo "
";
?>
Example 6: substring empty, html escaping
Copy the code The code is as follows:
$str=" String 5 ";
echo $str=trim($str);//Remove spaces on both sides, the result is: "String 5".
echo "
";
echo "color="red"";//Manually escape the ', ", in it to store it in the memory, the result is "color="red""
echo "
";
$str="
123";
echo htmlentities($str); //String escape<>&'" to avoid confusion with html Identification conflict so that it can be displayed on the HTML browser. The result is: "<br>123".
echo "
";
?>
http://www.bkjia.com/PHPjc/322481.htmlwww.bkjia.comtruehttp: //www.bkjia.com/PHPjc/322481.htmlTechArticleNumbers, floating point, and Boolean types are value types, English: int, float, bool, so you know how they are Used. For example, statement: $fa=3.14; Strings and arrays are reference types, which means they...