検索
ホームページphp教程php手册暗い夜に通行人から尋ねられたいくつかの PHP 筆記試験の質問

暗い夜に通行人から尋ねられたいくつかの PHP 筆記試験の質問

Jun 13, 2016 pm 12:22 PM
php1つコードベースコピープログラム結果テストの質問出力質問

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;


4.

コードをコピーします コードは次のとおりです:

$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) アルゴリズム。逐次検索は効率を考慮する必要があり、オブジェクトは順序付けされた配列にすることができます

3. 2 次元配列の並べ替えアルゴリズム関数を作成し、汎用的に使用でき、PHP 組み込み関数を呼び出すことができます
[答えは添付されています] (以下の答えは必ずしも最良ではありません。単なる参考です) 1. 基本的な質問

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, '.'));
}

関数 get_ext3($) file_name){
return array_pop(explode('.', $file_name)); function get_ext4($file_name){ $p = pathinfo($file_name); $p['拡張子'];
}
function get_ext5($file_name){
return strrev(substr(strrev($file_name), 0, strpos (strrev($file_name), '.') )); }


2. アルゴリズムの質問

1. PHP を使用してバブル ソートと高速ソート アルゴリズムを記述します。オブジェクトは配列にすることができます

コードをコピー

コードは次のとおりです:


//バブルソート (配列ソート)
function bubble_sort($array)
{
$count = count($array)
if ($count for($i=0; $ifor($j=$count-1; $j>$i; $j--){
if ($array[$j] $tmp = $array[$j]
$array[$j] = $array[$ j]; -1];
$array[$j-1] = $tmp;
}
}
}
return
}
//クイックソート (配列の並べ替え)
function Quick_sort($array) {
if (count($array) $key = $array[0]; array();
$right_arr = array();
for ($i=1; $iif ($array[$i] < ; = $key)
$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 $mid = intval(($low $high)/2);
if ($array[$mid] == $ k){
return $mid;
}elseif ($k 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; $iif($array[$i]==$k){
ブレーク;
}
}
if ($ireturn $ 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 を返す
}


声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

強力な PHP 統合開発環境

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

このプロジェクトは osdn.net/projects/mingw に移行中です。引き続きそこでフォローしていただけます。 MinGW: GNU Compiler Collection (GCC) のネイティブ Windows ポートであり、ネイティブ Windows アプリケーションを構築するための自由に配布可能なインポート ライブラリとヘッダー ファイルであり、C99 機能をサポートする MSVC ランタイムの拡張機能が含まれています。すべての MinGW ソフトウェアは 64 ビット Windows プラットフォームで実行できます。

AtomエディタMac版ダウンロード

AtomエディタMac版ダウンロード

最も人気のあるオープンソースエディター