


Lecture 2 of 'The Fastest way to Understand PHP Programming' Numbers, Floating Points, Boolean Types, Strings and Arrays_PHP Tutorial
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
$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
$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)
$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
$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
$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 "
";
?>

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics



Methods for deep copying arrays in PHP include: JSON encoding and decoding using json_decode and json_encode. Use array_map and clone to make deep copies of keys and values. Use serialize and unserialize for serialization and deserialization.

The performance comparison of PHP array key value flipping methods shows that the array_flip() function performs better than the for loop in large arrays (more than 1 million elements) and takes less time. The for loop method of manually flipping key values takes a relatively long time.

PHP's array_group_by function can group elements in an array based on keys or closure functions, returning an associative array where the key is the group name and the value is an array of elements belonging to the group.

The best practice for performing an array deep copy in PHP is to use json_decode(json_encode($arr)) to convert the array to a JSON string and then convert it back to an array. Use unserialize(serialize($arr)) to serialize the array to a string and then deserialize it to a new array. Use the RecursiveIteratorIterator to recursively traverse multidimensional arrays.

Multidimensional array sorting can be divided into single column sorting and nested sorting. Single column sorting can use the array_multisort() function to sort by columns; nested sorting requires a recursive function to traverse the array and sort it. Practical cases include sorting by product name and compound sorting by sales volume and price.

PHP's array_group() function can be used to group an array by a specified key to find duplicate elements. This function works through the following steps: Use key_callback to specify the grouping key. Optionally use value_callback to determine grouping values. Count grouped elements and identify duplicates. Therefore, the array_group() function is very useful for finding and processing duplicate elements.

On May 7, our mobile phone manufacturer officially announced that our company’s GTNeo6 launch conference is scheduled for May 9. GTNoe6 is positioned as a "performance storm", aiming to stir up the mid-range machine situation. In addition, this conference will also be the first AI digital human conference in the mobile phone industry. At that time, Realme Vice President, Global Marketing President, and China President Xu Qi will appear at the press conference in the form of a digital human. Digital man Xu Qi According to the official introduction, Realme GTNoe6, codenamed "Hurricane", is faster and stronger. It will challenge the strongest third-generation Snapdragon 8s flagship and the strongest product in its class. Recently, the Realme GTNeo6 was found to be directly on the e-commerce platform. Some core configurations were exposed, showing that the machine is not only equipped with a Snapdragon 8s processor, but also supports 120W flash charging.

Yes, in many programming languages, arrays can be used as function parameters, and the function will perform operations on the data stored in it. For example, the printArray function in C++ can print the elements in an array, while the printArray function in Python can traverse the array and print its elements. Modifications made to the array by these functions are also reflected in the original array in the calling function.
