当前位置:首页 > 教程/笔记 > 正文内容

PHP常用函数大合集

一、日期与时间函数

strtotime($time_string): 将任何英文的日期时间描述转化为Unix时间戳。例如:

$timestamp = strtotime("next Monday");
echo $timestamp;

解释:该函数可以根据描述的日期时间返回一个Unix时间戳,用于表示从1970年1月1日00:00:00 UTC到指定时间的秒数。

date_create($date_format, $timezone = null): 返回一个新的 DateTime 对象。例如:

$datetime=date_create('2023-07-18', timezone_open('Europe/London'));
echo $datetime->format('Y-m-d H:i:s');

解释:该函数可以创建一个DateTime对象,并设置指定的日期和时区。然后,可以使用format()方法来格式化日期和时间。

date_format($datetime, $format): 按照给定的格式输出 DateTime 对象的日期时间。例如:

$datetime = new DateTime('2023-07-18');
echo date_format($datetime, 'Y-m-d H:i:s');

解释:该函数可以根据指定的格式输出DateTime对象的日期时间。在这个例子中,我们将日期时间格式化为'Y-m-d H:i:s'的格式。

date($format, $timestamp = time()): 格式化日期和时间。例如:

$date = date('Y-m-d'); // 格式化为年-月-日的日期
echo $date; // 输出当前日期,例如:2023-07-19

解释:该函数用于格式化日期和时间。第一个参数指定日期的格式,第二个参数可选,指定一个时间戳,默认为当前时间。在这个例子中,日期被格式化为年-月-日的形式。

time(): 返回当前时间的 Unix 时间戳。例如:

$timestamp = time();
echo $timestamp; // 输出当前时间的 Unix 时间戳

解释:该函数返回当前时间的 Unix 时间戳,即从1970年1月1日00:00:00 UTC到现在的秒数。

strtotime($time_string): 将任何英文的日期时间描述转化为Unix时间戳。例如:

$timestamp = strtotime('next Monday'); // 返回下一个星期一的 Unix 时间戳
echo $timestamp;

解释:该函数将任何英文的日期时间描述转化为Unix时间戳。在这个例子中,它返回下一个星期一的Unix时间戳。

date_format($date_object, $format): 格式化日期对象。例如:

$date = new DateTime('2023-07-19');
$formattedDate = date_format($date, 'd/m/Y'); // 格式化为日/月/年的日期
echo $formattedDate; // 输出:19/07/2023

解释:该函数用于格式化日期对象。第一个参数是日期对象,第二个参数指定日期的格式。在这个例子中,日期对象被格式化为日/月/年的形式。

二、文件操作函数

file_get_contents($filename, $use_include_path = false, $context = null, $offset = -1, $maxlen = -1): 读取文件内容。例如:

$content = file_get_contents('file.txt');
echo $content;

解释:该函数可以读取指定文件的内容,并将其存储在变量中。如果文件不存在或无法读取,则返回false。

file_put_contents($filename, $data, $flags = null, $context = null): 将数据写入文件。例如:

$data = 'Hello World';
file_put_contents('file.txt', $data);

解释:该函数将数据写入指定的文件中。如果文件不存在,则创建文件。如果文件已经存在,则覆盖原有内容。注意,要写入文件,需要确保PHP脚本对文件有写入权限。

file($filename, $use_include_path = false, $context = null): 读取文件并输出内容。例如:

file('file.txt');

解释:该函数可以读取指定文件的内容,并将其直接输出到浏览器。注意,该函数只能用于文本文件,并且需要确保PHP脚本对文件有读取权限。

fopen($filename, $mode): 打开一个文件并返回文件资源。例如:

$file = fopen('file.txt', 'r');
if ($file) {
echo "文件已打开";
fclose($file);
} else {
echo "无法打开文件";
}

解释:该函数用于打开一个文件,并返回文件资源。如果文件成功打开,则返回文件资源;否则返回false。在这个例子中,文件'file.txt'被以只读模式打开。

fclose($file): 关闭一个打开的文件。例如:

$file = fopen('file.txt', 'r');
fclose($file);

解释:该函数用于关闭一个打开的文件。在这个例子中,文件'file.txt'被关闭。

fread($file, $length): 从文件中读取指定长度的数据。例如:

$file = fopen('file.txt', 'r');
$content = fread($file, 10); // 读取前10个字符
fclose($file);
echo $content;

解释:该函数用于从文件中读取指定长度的数据。在这个例子中,从文件'file.txt'中读取了前10个字符。

fwrite($file, $data): 将数据写入文件。例如:

$file = fopen('file.txt', 'w');
$data = 'Hello, World!';
fwrite($file, $data);
fclose($file);

解释:该函数用于将数据写入文件。在这个例子中,字符串'Hello, World!'被写入文件'file.txt'中。注意,文件必须以写入模式打开('w')才能进行写入操作。

三、字符串与数组处理函数

explode($delimiter, $string): 将字符串拆分为数组。例如:

$array = explode(',', 'apple,banana,cherry');
print_r($array);

解释:该函数将字符串按照指定的分隔符拆分为数组。在这个例子中,字符串'apple,banana,cherry'被拆分为数组['apple', 'banana', 'cherry']。

implode($glue, $pieces): 将数组组合为字符串。例如:

$array = array('apple', 'banana', 'cherry');
$string = implode(',', $array);
echo $string;

解释:该函数将数组中的元素组合成一个字符串,元素之间用指定的分隔符连接。在这个例子中,数组['apple', 'banana', 'cherry']被组合成字符串'apple,banana,cherry'。

strpos($haystack, $needle, $offset = 0): 查找一个字符串在另一个字符串中的位置。例如:

$position = strpos("Hello World", "World");
echo $position; // 输出: 6

解释:该函数用于查找指定字符串在另一个字符串中的位置。如果找到了,则返回位置索引;否则返回false。在这个例子中,字符串"World"在"Hello World"中的位置索引为6。

array_search($needle, $haystack): 在数组中查找指定的值,并返回键名。例如:

$key = array_search("banana", $array);
echo $key; // 输出: 1

解释:该函数用于在数组中查找指定的值,并返回对应的键名。如果值不存在于数组中,则返回false。在这个例子中,键名1对应的值是"banana"。

array_map($callback, $array): 对数组中的每个元素应用回调函数。例如:

$newArray = array_map(function($item){ return $item * 2; }, $array);
print_r($newArray); // 输出: [2, 4, 6]

解释:该函数对数组中的每个元素应用指定的回调函数,并返回一个新的数组。在这个例子中,回调函数将每个元素乘以2,得到新的数组[2, 4, 6]。

array_filter($array, $callback = true): 对数组中的每个元素应用回调函数,并根据回调函数的返回值过滤数组。例如:

$filteredArray = array_filter($array, function($item){ return $item % 2 == 0; });
print_r($filteredArray); // 输出: [1 => 'banana']

解释:该函数对数组中的每个元素应用指定的回调函数,并根据回调函数的返回值保留符合条件的元素。在这个例子中,回调函数保留偶数元素,得到过滤后的数组[1 => 'banana']。

四、数组函数

array_push($array, $value1, $value2, ...): 将一个或多个元素添加到数组末尾。例如:

$array = array('apple');
array_push($array, 'banana', 'cherry');
print_r($array); // 输出: Array ( [0] => apple [1] => banana [2] => cherry )

解释:该函数将一个或多个元素添加到数组的末尾。在这个例子中,元素'banana'和'cherry'被添加到数组$array的末尾。

array_pop($array): 移除并返回数组的最后一个元素。例如:

$array = array('apple', 'banana', 'cherry');
$lastElement = array_pop($array);
echo $lastElement; // 输出: cherry

解释:该函数移除并返回数组的最后一个元素。在这个例子中,最后一个元素'cherry'被移除并返回。

in_array($needle, $haystack, $strict = false): 检查一个值是否存在于数组中。例如:

$array = array('apple', 'banana', 'cherry');
$containsApple = in_array('apple', $array);
echo $containsApple; // 输出: 1

解释:该函数用于检查一个值是否存在于数组中。如果存在,则返回true;否则返回false。在这个例子中,值'apple'存在于数组中,所以返回true(在PHP中,true的整数形式为1)。

array_search($needle, $haystack, $strict = false): 在数组中查找指定的值,并返回键名。例如:

$key = array_search('banana', $array);
echo $key; // 输出: 1

解释:该函数用于在数组中查找指定的值,并返回对应的键名。如果值不存在于数组中,则返回false。在这个例子中,键名1对应的值是'banana'。

五、其他常用函数

isset($var): 检查变量是否已设置并且非null。例如:

$var = '';
if (isset($var)) {
echo "变量已设置";
} else {
echo "变量未设置";
}

解释:该函数用于检查变量是否已设置并且非null。如果变量已设置且非null,则返回true;否则返回false。在这个例子中,由于变量$var被设置了,所以输出"变量已设置"。

unset($var): 删除一个或多个变量。例如:

$var1 = 'Hello';
$var2 = 'World';
unset($var1);
unset($var2, $var3);

解释:该函数用于删除一个或多个变量。在这个例子中,变量var1和var2被删除。注意,一旦变量被删除,就不能再访问它了。

echo 或 print(): 输出一个或多个字符串。例如:

echo "Hello, World!";
print("Hello, World!");

解释:这两个函数都可以用于输出字符串到浏览器或控制台。在这个例子中,它们都输出"Hello, World!"。

printf($format, $arg1, $arg2, ...): 输出格式化的字符串。例如:

printf("Hello, %s!", "World"); // 输出: Hello, World!

解释:该函数用于输出格式化的字符串。格式化字符串中的占位符(%s、%d等)将被后面的参数替换。在这个例子中,占位符%s被参数"World"替换,输出"Hello, World!"。

下一篇:没有了