PHP作为一种流行的服务器端脚本语言,拥有丰富的内置函数和命令,这些函数和命令是PHP开发者日常工作中不可或缺的工具。以下列举了50个PHP中常用且必知的函数与命令,并对它们进行解析。

1. echoprint

这两个函数用于输出内容到浏览器。echo 更灵活,可以输出多个变量,而 print 只能输出一个值。

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

2. isset()

检查变量是否已设置且不为NULL。

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

3. empty()

检查变量是否为空(空字符串、0、null等)。

$var = "";
if (empty($var)) {
    echo "变量为空";
}

4. count()

计算数组中的元素个数。

$array = array("a", "b", "c");
echo count($array); // 输出 3

5. foreach

遍历数组或对象。

$array = array("a", "b", "c");
foreach ($array as $value) {
    echo $value;
}

6. includerequire

这两个函数用于包含其他文件。include 如果失败不会停止脚本的执行,而 require 会。

include 'header.php';
require 'footer.php';

7. mysql_* 函数

这些函数用于MySQL数据库操作(已废弃,推荐使用PDO或mysqli)。

mysql_connect("localhost", "user", "password");
mysql_select_db("my_db");
$result = mysql_query("SELECT * FROM my_table");

8. PDO

PHP Data Objects扩展提供了一种数据访问抽象层,用于访问多种数据库。

$dsn = 'mysql:host=localhost;dbname=my_db';
$options = array(
    PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
);
try {
    $pdo = new PDO($dsn, 'user', 'password', $options);
} catch (PDOException $e) {
    echo 'Connection failed: ' . $e->getMessage();
}

9. session_start()

启动或继续一个会话。

session_start();
$_SESSION['key'] = 'value';

10. $_GET$_POST

这些全局变量用于获取通过URL传递的GET参数和表单提交的数据。

if (isset($_GET['name'])) {
    echo "Hello, " . $_GET['name'];
}

11. $_SERVER

这个全局数组包含头信息、路径和脚本位置等信息。

echo $_SERVER['HTTP_HOST'];

12. $_FILES

这个全局数组包含通过HTTP POST上传的文件信息。

if ($_FILES['file']['error'] == 0) {
    move_uploaded_file($_FILES['file']['tmp_name'], 'uploads/' . $_FILES['file']['name']);
}

13. md5()

生成输入数据的MD5散列值。

echo md5("Hello, World!");

14. sha1()

生成输入数据的SHA-1散列值。

echo sha1("Hello, World!");

15. urlencode()urldecode()

用于对URL进行编码和解码。

echo urlencode("Hello, World!");
echo urldecode("Hello%2C%20World%21");

16. strtoupper()strtolower()

将字符串转换为大写或小写。

echo strtoupper("Hello, World!");
echo strtolower("HELLO, WORLD!");

17. trim()

移除字符串两端的空白字符。

echo trim("  Hello, World!  ");

18. explode()implode()

用于字符串分割和连接。

$array = explode(",", "a,b,c");
print_r($array); // 输出 Array ( [0] => a [1] => b [2] => c )
echo implode(",", $array); // 输出 a,b,c

19. array_merge()

合并一个或多个数组。

$array1 = array("color" => "red", "size" => "medium");
$array2 = array("shape" => "circle", "color" => "green");
$result = array_merge($array1, $array2);
print_r($result); // 输出 Array ( [color] => green [size] => medium [shape] => circle )

20. array_pop()

移除数组中的最后一个元素。

$array = array("a", "b", "c");
array_pop($array);
print_r($array); // 输出 Array ( [0] => a )

21. array_push()

向数组末尾添加一个或多个元素。

$array = array("a", "b", "c");
array_push($array, "d");
print_r($array); // 输出 Array ( [0] => a [1] => b [2] => c [3] => d )

22. array_shift()

移除数组中的第一个元素并返回它。

$array = array("a", "b", "c");
array_shift($array);
print_r($array); // 输出 Array ( [0] => b [1] => c )

23. array_unshift()

向数组开头添加一个或多个元素。

$array = array("a", "b", "c");
array_unshift($array, "d");
print_r($array); // 输出 Array ( [0] => d [1] => a [2] => b [3] => c )

24. array_slice()

提取数组中的一段。

$array = array("a", "b", "c", "d", "e", "f");
$slice = array_slice($array, 2, 3);
print_r($slice); // 输出 Array ( [2] => c [3] => d [4] => e )

25. array_splice()

删除数组中的一段并返回它。

$array = array("a", "b", "c", "d", "e", "f");
$spliced = array_splice($array, 2, 3);
print_r($array); // 输出 Array ( [0] => a [1] => b [3] => e [4] => f )
print_r($spliced); // 输出 Array ( [2] => c [3] => d [4] => e )

26. array_map()

对数组中的每个元素应用回调函数。

$array = array("a", "b", "c");
$map = array_map("strtoupper", $array);
print_r($map); // 输出 Array ( [0] => A [1] => B [2] => C )

27. array_reduce()

将数组中的元素通过回调函数累计起来。

$array = array(1, 2, 3, 4, 5);
$sum = array_reduce($array, function ($carry, $item) {
    return $carry + $item;
});
echo $sum; // 输出 15

28. array_filter()

使用回调函数过滤数组。

$array = array(1, 2, 3, 4, 5);
$filtered = array_filter($array, function ($item) {
    return $item > 2;
});
print_r($filtered); // 输出 Array ( [3] => 4 [4] => 5 )

29. array_reduce()

将数组中的元素通过回调函数累计起来。

$array = array(1, 2, 3, 4, 5);
$sum = array_reduce($array, function ($carry, $item) {
    return $carry + $item;
});
echo $sum; // 输出 15

30. array_filter()

使用回调函数过滤数组。

$array = array(1, 2, 3, 4, 5);
$filtered = array_filter($array, function ($item) {
    return $item > 2;
});
print_r($filtered); // 输出 Array ( [3] => 4 [4] => 5 )

31. array_map()

对数组中的每个元素应用回调函数。

$array = array("a", "b", "c");
$map = array_map("strtoupper", $array);
print_r($map); // 输出 Array ( [0] => A [1] => B [2] => C )

32. array_slice()

提取数组中的一段。

$array = array("a", "b", "c", "d", "e", "f");
$slice = array_slice($array, 2, 3);
print_r($slice); // 输出 Array ( [2] => c [3] => d [4] => e )

33. array_splice()

删除数组中的一段并返回它。

$array = array("a", "b", "c", "d", "e", "f");
$spliced = array_splice($array, 2, 3);
print_r($array); // 输出 Array ( [0] => a [1] => b [3] => e [4] => f )
print_r($spliced); // 输出 Array ( [2] => c [3] => d [4] => e )

34. array_unshift()

向数组开头添加一个或多个元素。

$array = array("a", "b", "c");
array_unshift($array, "d");
print_r($array); // 输出 Array ( [0] => d [1] => a [2] => b [3] => c )

35. array_shift()

移除数组中的第一个元素并返回它。

$array = array("a", "b", "c");
array_shift($array);
print_r($array); // 输出 Array ( [0] => b [1] => c )

36. array_push()

向数组末尾添加一个或多个元素。

$array = array("a", "b", "c");
array_push($array, "d");
print_r($array); // 输出 Array ( [0] => a [1] => b [2] => c [3] => d )

37. array_pop()

移除数组中的最后一个元素。

$array = array("a", "b", "c");
array_pop($array);
print_r($array); // 输出 Array ( [0] => a [1] => b )

38. array_merge()

合并一个或多个数组。

$array1 = array("color" => "red", "size" => "medium");
$array2 = array("shape" => "circle", "color" => "green");
$result = array_merge($array1, $array2);
print_r($result); // 输出 Array ( [color] => green [size] => medium [shape] => circle )

39. explode()implode()

用于字符串分割和连接。

$array = array("a", "b", "c");
print_r($array); // 输出 Array ( [0] => a [1] => b [2] => c )
echo implode(",", $array); // 输出 a,b,c

40. strtoupper()strtolower()

将字符串转换为大写或小写。

echo strtoupper("Hello, World!");
echo strtolower("HELLO, WORLD!");

41. trim()

移除字符串两端的空白字符。

echo trim("  Hello, World!  ");

42. md5()

生成输入数据的MD5散列值。

echo md5("Hello, World!");

43. sha1()

生成输入数据的SHA-1散列值。

echo sha1("Hello, World!");

44. urlencode()urldecode()

用于对URL进行编码和解码。

echo urlencode("Hello, World!");
echo urldecode("Hello%2C%20World%21");

45. file_get_contents()

读取整个文件内容。

echo file_get_contents("example.txt");

46. file_put_contents()

将数据写入文件。

file_put_contents("example.txt", "Hello, World!");

47. fopen()

打开文件。

$handle = fopen("example.txt", "r");

48. fclose()

关闭文件。

fclose($handle);

49. feof()

检测是否到达文件末尾。

$handle = fopen("example.txt", "r");
while (!feof($handle)) {
    $line = fgets($handle);
    echo $line;
}
fclose($handle);

50. is_readable()

检查文件或目录是否可读。

if (is_readable("example.txt")) {
    echo "文件可读";
}

以上是PHP中常用的50个函数与命令的解析,这些函数和命令是PHP开发者日常工作中不可或缺的工具。熟练掌握这些函数和命令,将有助于提高开发效率和质量。