14-7.php3

来自「linux操作系统中 php 核心编程所有例程 都是一些很不错的案例」· PHP3 代码 · 共 101 行

PHP3
101
字号
<HTML>
<HEAD>
<TITLE>Figure 14-7</TITLE>
</HEAD>
<BODY>
<?

	/*
	** Define a function for comparing
	** employees based on name 
	*/
	function byName($left, $right)
	{
		return(strcmp($left[0], $right[0]));
	}

	/*
	** Define a function for comparing
	** employees based on title 
	*/
	function byTitle($left, $right)
	{
		if($left[1] == $right[1])
		{
			return(0);
		}
		else
		{
			$title = array(
				"President"=>1,
				"CEO"=>2,
				"Manager"=>3,
				"Programmer"=>4
				);
				
			return($title[$left[1]] - $title[$right[1]]);
		}
	}

	/*
	** Define a function for comparing
	** employees based on salary, then name
	*/
	function bySalary($left, $right)
	{
		if($left[2] == $right[2])
		{
			return(byName($left, $right));
		}
		else
		{
			return($right[2] - $left[2]);
		}
	}

	/*
	** Define function for printing array
	*/
	function PrintEmployees($input_array)
	{
		while(list($index, $value) = each($input_array)) 
		{
			printf("%s (%s) %.2f/Hour <BR>\n",
				$value[0],
 				$value[1],
				$value[2]);
		}
	}


	/*
	** Create some employees
	** Name, Title, Wage
	*/
	$employee[] = array("Smith, John", "Programmer", 20);
	$employee[] = array("Doe, Jane", "Programmer", 20);
	$employee[] = array("Mann, Joe", "Manager", 35);
	$employee[] = array("Smith, John", "CEO", 50);
	$employee[] = array("Leeds, Al", "President", 100);

	print("<B>Unsorted</B><BR>\n");
	PrintEmployees($employee);
	print("<BR>\n");

	print("<B>Sorted by Name</B><BR>\n");
	usort($employee, "byName");
	PrintEmployees($employee);
	print("<BR>\n");

	print("<B>Sorted by Title</B><BR>\n");
	usort($employee, "byTitle");
	PrintEmployees($employee);
	print("<BR>\n");

	print("<B>Sorted by Salary</B><BR>\n");
	usort($employee, "bySalary");
	PrintEmployees($employee);

?>
</BODY>
</HTML>

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?