


PHP Mobile Internet Development Notes (4) - Custom Functions and Arrays_PHP Tutorial
1. Custom function
Custom functions are functions that we define ourselves. The format of custom functions in PHP is as follows:
function funname(arg1, arg2, arg3...){
//TODO
return values;
}
Output result:
<?php function fun($m, $n){ if($m==0 || $n==0){ return 0; }else{ $a=$m*$n; return $a; } } $p=2; $h=3; echo $p."*".$h."=".fun($p,$h); ?>Copy after login
The following is another function with variable parameters
<?php /* function fun($m, $n){ if($m==0 || $n==0){ return 0; }else{ $a=$m*$n; return $a; } } $p=2; $h=3; echo $p."*".$h."=".fun($p,$h); */ function fun($m, $n=1, $x=2){ $a=$m*$n*$x; return $a; } $p=2; echo fun($p)."<br>"; // 2*1*2 = 4 echo fun($p, 3)."<br>"; // 2*3*2 = 12 echo fun($p, 3, 3)."<br>"; // 2*3*3 = 18 ?>Copy after login![]()
Let’s take a look at custom function reference passing
<?php /* function fun($m, $n){ if($m==0 || $n==0){ return 0; }else{ $a=$m*$n; return $a; } } $p=2; $h=3; echo $p."*".$h."=".fun($p,$h); */ /* function fun($m, $n=1, $x=2){ $a=$m*$n*$x; return $a; } $p=2; echo fun($p)."<br>"; // 2*1*2 = 4 echo fun($p, 3)."<br>"; // 2*3*2 = 12 echo fun($p, 3, 3)."<br>"; // 2*3*3 = 18 */ function fun(&$n){ $n=$n*$n; } $p=2; fun($p); echo $p; ?>Copy after login![]()
2. Array definition and assignment
1. Basic writing format of array
Simple form: array(value1, value2, value3, ..........)
array("aa", 12, true, 2.2, "test", 50); //Get data through array subscript
Full form: array(key1=>value1, key2=>value2, ...)
array("title"=>"aa", "age"=>20); //Data can only be obtained by key name
2. How to create an array
//第一种 $arr1=array(11, 22, 33, "44"); //第二种 $arr2=array('a'=>'11', 'b'=>'22'); //第三种 $arr3[0]='20'; $arr3[1]='30';Copy after login
3. Array operations
1. Modification
$arr=array(11, 22, 33, 44);
$arr[0]=55; //The array becomes $arr=array(55, 22, 33, 44);
2. Delete
$arr=array(11, 22, 33, 44);
unset($arr[0]); //The array becomes $arr=array(22, 33, 44);
3. Use
$arr=array(11, 22, 33, 44);
echo $arr[0];
$arr=array('a'=>11, 'b'=>22, 'c'=>33, 'd'=>44);
echo $arr['b']];
4. Traverse
$arr=array('a'=>11, 'b'=>22, 'c'=>33, 'd'=>44);
foreach($arr as $value){ //No key name
echo $value."
";}
foreach($arr as $id=>$value){ //Output key and value
echo $id."__".$value."
";}
4. Two-dimensional array
$arr=array(array("1","11","111"), array("2","22","222"));
echo $arr[1][2];
5. Array function
(1)array_change_key_case(array, case)
array: required, array.
case: optional, CASE_LOWER (default value, lowercase letters return the key of the array), CASE_UPPER (uppercase letters return the key of the array)
Function: Convert all KEYs in the array to uppercase or lowercase.
<?php $a=array("a"=>"Cat","b"=>"Dog","c"=>"Horse"); print_r(array_change_key_case($a,CASE_UPPER)); ?> 结果:Array ( [A] => Cat [B] => Dog [C] => Horse )Copy after login(2)array_chunk(array,size,preserve_key)
array: required.
size: required, specifies how many elements each new array contains.
preserve_key: optional, true (preserve key name), false (new index)
Function: Divide an array into new array blocks.
<?php //array_chunk(array,size,preserve_key) $a1=array("a"=>"Cat","b"=>"Dog","c"=>"Horse","d"=>"Cow"); print_r(array_chunk($a1,2)); $a2=array("a"=>"Cat","b"=>"Dog","c"=>"Horse","d"=>"Cow"); print_r(array_chunk($a2,2,true)); ?> 结果:Copy after login
Array ( [0] => Array ( [0] => Cat [1] => Dog ) [1] => Array ( [0] => Horse [1] => Cow ) )
Array ( [0] => Array ( [a] => Cat [b] => Dog ) [1] => Array ( [c] => Horse [d] => Cow ) )......
There are many functions like this, you can check them when using them. The list is as follows (php represents the first version)
Function Description PHP array() Create an array. 3 array_change_key_case() Returns an array whose keys are all uppercase or lowercase. 4 array_chunk() Split an array into new array blocks. 4 array_combine() Create a new array by merging two arrays. 5 array_count_values() Used to count the number of occurrences of all values in the array. 4 array_diff() Returns the difference array of two arrays. 4 array_diff_assoc() Compare the key name and key value, and return the difference array of the two arrays. 4 array_diff_key() Compare key names and return the difference array of the two arrays. 5 array_diff_uassoc() Calculate the difference set of arrays by doing index checking through the callback function provided by the user. 5 array_diff_ukey() Use the callback function to compare the key names and calculate the difference set of the array. 5 array_fill() Fills the array with the given values. 4 array_filter() Use callback function to filter the elements in the array. 4 array_flip() Swap the keys and values in the array. 4 array_intersect() Calculate the intersection of arrays. 4 array_intersect_assoc() Compare the key name and key value and return the intersection array of the two arrays. 4 array_intersect_key() Calculate the intersection of arrays using key name comparison. 5 array_intersect_uassoc() Calculate the intersection of arrays with index checking, and use callback functions to compare the indices. 5 array_intersect_ukey() Use callback function to compare key names to calculate the intersection of arrays. 5 array_key_exists() Checks whether the given key or index exists in the array. 4 array_keys() Returns all key names in the array. 4 array_map() Apply the callback function to the cells of the given array. 4 array_merge() Combine one or more arrays into one array. 4 array_merge_recursive() Recursively merge one or more arrays. 4 array_multisort() Sort multiple arrays or multidimensional arrays. 4 array_pad() Pall the array to the specified length with values. 4 array_pop() Pop the last element of the array (pop off the stack). 4 array_product() Calculate the product of all values in an array. 5 array_push() Push one or more cells (elements) to the end of the array (push). 4 array_rand() Randomly select one or more elements from the array and return it. 4 array_reduce() Use a callback function to iteratively reduce the array to a single value. 4 array_reverse() Reverse the order of elements in the original array, create a new array and return it. 4 array_search() Search for the given value in the array and return the corresponding key name if successful. 4 array_shift() Deletes the first element in the array and returns the value of the deleted element. 4 array_slice() Retrieve a value from the array based on the condition and return it. 4 array_splice() Remove part of the array and replace it with other values. 4 array_sum() Calculate the sum of all values in an array. 4 array_udiff() Use callback function to compare data to calculate the difference of arrays. 5 array_udiff_assoc() Calculate the difference set of arrays with index checking, and use callback functions to compare data. 5 array_udiff_uassoc() With index check, calculate the difference set of the array, and use the callback function to compare the data and index. 5 array_uintersect() Calculate the intersection of arrays and use callback functions to compare data. 5 array_uintersect_assoc() Calculate the intersection of arrays with index checking and use callback functions to compare data. 5 array_uintersect_uassoc() Calculate the intersection of arrays with index checking, and use callback functions to compare data and indexes. 5 array_unique() Remove duplicate values from the array. 4 array_unshift() Insert one or more elements at the beginning of the array. 4 array_values() Returns all values in the array. 4 array_walk() Apply a user function to each member of the array. 3 array_walk_recursive() Apply the user function recursively to each member of the array. 5 arsort() Reverse sort the array and maintain index relationship. 3 asort() Sort the array and maintain index relationship. 3 compact() Create an array including variable names and their values. 4 count() Count the number of elements in an array or the number of attributes in an object. 3 current() Returns the current element in the array. 3 each() Returns the current key/value pair in the array and moves the array pointer forward one step. 3 end() Point the internal pointer of the array to the last element. 3 extract() Import variables from the array into the current symbol table. 3 in_array() Checks whether the specified value exists in the array. 4 key() Get the key name from the associative array. 3 krsort() Sort the array in reverse order by key name. 3 ksort() Sort the array by key name. 3 list() Assign the values in the array to some variables. 3 natcasesort() Sort the array in a case-insensitive manner using the "natural sorting" algorithm. 4 natsort() Sort the array using the "natural sorting" algorithm. 4 next() Move the internal pointer in the array forward one position. 3 pos() An alias for current(). 3 prev() Rewind the internal pointer of the array by one bit. 3 range() Create an array containing elements in the specified range. 3 reset() Point the internal pointer of the array to the first element. 3 rsort() Sort the array in reverse order. 3 shuffle() Rearrange the elements in the array in random order. 3 sizeof() An alias for count(). 3 sort() Sort the array. 3 uasort() Use user-defined comparison functions to sort values in an array and maintain index association. 3 uksort() Use user-defined comparison function to sort the keys in the array. 3 usort() Sort the values in an array using a user-defined comparison function. 3

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

AI Hentai Generator
Generate AI Hentai for free.

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

1. The SUM function is used to sum the numbers in a column or a group of cells, for example: =SUM(A1:J10). 2. The AVERAGE function is used to calculate the average of the numbers in a column or a group of cells, for example: =AVERAGE(A1:A10). 3. COUNT function, used to count the number of numbers or text in a column or a group of cells, for example: =COUNT(A1:A10) 4. IF function, used to make logical judgments based on specified conditions and return the corresponding result.

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.

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.

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 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.

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.

Exception handling in C++ can be enhanced through custom exception classes that provide specific error messages, contextual information, and perform custom actions based on the error type. Define an exception class inherited from std::exception to provide specific error information. Use the throw keyword to throw a custom exception. Use dynamic_cast in a try-catch block to convert the caught exception to a custom exception type. In the actual case, the open_file function throws a FileNotFoundException exception. Catching and handling the exception can provide a more specific error message.

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.
