1. 基本的な質問
1. 次のプログラムの出力結果を記述します
コードをコピーします コードは次のとおりです。
?
$str1 = null;
$str2 = false;
echo $str1==$str2 ? >$str3 = ' ';
$str4 = 0;
echo $str3==$str4 ? '等しい' : '等しくない'
$str6 = ' 0';
echo $str5===$str6 ? '等しい' : '等しくない'
2.次のプログラム
<$a1 = null? ; $a2 = false;
$a4 = '0';$a6 = 'null'; a7 = 配列();
$a8 = 配列(配列());
エコー空($a1) : '偽';
エコー空($a2); : 'false';
エコー空($a3) ? 'true' : 'true' : 'false'; ? 'true' : 'false';
エコー空($a6) ? 'true' : 'false'; ($a8) ? 'true' : 'false';
3. 次のプログラムの出力を書き込みます。 🎜>
コードをコピーします
コードは次のとおりです:
$test = 'aaaaaa'; ;
unset($test);
echo $abc;
コードをコピーします コードは次のとおりです:
$count = 5;function get_count(){
static $count = 0;
return $count;
echo get_count(); ?>
5. 次のプログラムの出力結果を書き込みます
コードは次のとおりです:
$GLOBALS['var1'] = 5;function get_value(){
global $var2;
$var1 = 0;
return $var2;
echo $var2; 🎜>
6. 次のプログラムの出力を書き込みます
function get_arr($arr){ unset($arr[0]) } $arr1 = array(1, 2); $arr2 = 配列(1, 2);
get_arr(&$arr1);エコーカウント($arr1); );
?>
7. ファイルの拡張子を取得するための 5 つ以上の方法を使用します
要件: dir/upload.image.jpg .jpg または jpg を検索します。
PHP 独自の処理関数を使用して処理する必要があります。メソッドは明白ではありません。繰り返します。get_ext1($file_name)、get_ext2($file_name) などの関数にカプセル化できます。
2. アルゴリズムの質問
1. PHP を使用して、バブル ソートおよびクイック ソートのアルゴリズムを記述します。
2. PHP を使用して、逐次検索とバイナリ検索 (バイナリ検索とも呼ばれます) を記述します。 search) アルゴリズム。逐次検索は効率を考慮する必要があり、オブジェクトは順序付けされた配列にすることができます
1. 等しい 等しい 等しくない 2. false true false 3. aaaaa 4. 5 0 1 6. 5 つ以上のメソッドを使用してファイルの拡張子を取得します
コードをコピーします
コードは次のとおりです:
function get_ext1($file_name ){
return strrchr($file_name, '.');
}
関数 get_ext2($file_name){
return substr($file_name, strrpos($file_name, '.'));
}
//バブルソート (配列ソート)
function bubble_sort($array)
{
$count = count($array)
if ($count for($i=0; $ifor($j=$count-1; $j>$i; $j--){
if ($array[$j] < $array[$j-1]){
$tmp = $array[$j]
$array[$j] = $array[$ j]; -1];
$array[$j-1] = $tmp;
}
}
}
return
}
//クイックソート (配列の並べ替え)
function Quick_sort($array) {
if (count($array) <= 1) return $array;
$key = $array[0]; array();
$right_arr = array();
for ($i=1; $i
$left_arr[] = $array[$i];
else
$right_arr[] = $array[$i]
}
$left_arr = Quick_sort ( $left_arr);
$right_arr = Quick_sort($right_arr);
return array_merge($left_arr, array($key), $right_arr);
2 PHP を使用して、順次検索およびバイナリ検索 (バイナリ検索とも呼ばれる) アルゴリズムを記述します。 順次検索では、
のコードを使用できます。 コードは次のとおりです。
//二分探索 (配列内の特定の要素を検索)function bin_sch($array, $low, $high, $k){
if ($low <= $high){
$mid = intval(($low $high)/2);
if ($array[$mid] == $ k){
return $mid;
}elseif ($k <$array[$mid]){
return bin_sch($array, $low, $mid-1, $k); 🎜>}else{
return bin_sch($array, $mid 1, $high, $k);
}
}
return
}
//シーケンシャルsearch (配列内の特定の要素を検索)
function seq_sch($array, $n, $k){
$array[$n] = $k;
for($i=0; $i< ;$n; $ i ){
if($array[$i]==$k){
ブレーク;
}
}
if ($i<$n){
return $ i;
}else{
return -1;
}
}
3. 2 次元配列のソート アルゴリズムを作成します。ユニバーサルにすることができる関数、PHP 組み込み関数を呼び出すことができます
コードは次のとおりです: //二次元配列のソート、$arr はデータ、$keys はソートのキー値、$order はソート規則、1 は昇順、0 は降順
function array_sort($arr, $keys, $order=0) {if (!is_array( $arr)) {
return false;
}
$keysvalue = array()
foreach($arr as) $key => $val) {
$keysvalue[$key ] = $val[$keys];
if($order == 0){
asort($keysvalue) ;
}else {
arsort($keysvalue);
}
foreach($keysvalue as $key => $vals) {
$keysort [$key] = $key;
$ new_array = array();
foreach($keysort as $key => $val) {
$new_array[$key] = $ arr[$val];
}
$new_array を返す
}