そのような要件があります。配列 $data = array(12, 43, 87, 45) では、配列要素の番号を個別に区切るカスタム関数を記述する必要があります。最終的に形成される配列は次のとおりです。 (1、2、4、3、8、7、4、5)。これは、元の配列内のすべての数値を「単一」の数字に「分割」することを意味します。
以下は私が書いた関数です:
リーリーテストしましたが、まだ機能します。次のように呼び出します:
リーリー出力結果は次のとおりです:
リーリー実行は良好ですが、標準的な答えを見ると驚くでしょう。関数には次の 1 つの文しかありません。 リーリー
そこで、独自の関数と標準関数の間の動作効率のギャップをテストするスクリプトを作成しました。その中には、正確な時間のサポートを提供する microtime_float() 関数があります。 リーリー出力を見てみましょう:
リーリーページを複数回更新すると、標準関数の実行効率は基本的に独自関数の 3 倍であることがわかります。もちろん、標準関数は PHP の組み込み関数 str_split() や implode() を使用するため、自分で関数を記述するよりもはるかに高速です。 str_split() 関数についての印象はありませんか。マニュアルの説明を見てみましょう:
str_split -- 文字列を配列に変換します (文字列を配列に変換します)
機能の説明:
array str_split ( string string [, int split_length] )
文字列を配列に変換します。オプションのsplit_lengthパラメータが指定されている場合、返される配列はそれぞれの長さがsplit_lengthであるチャンクに分割されます。それ以外の場合、各チャンクの長さは1文字になります。
split_length が 1 未満の場合は FALSE が返されます。split_length の長さが文字列の長さを超える場合は、文字列全体が最初 (唯一の) 配列要素として返されます。
例 1. str_split() の使用例
リーリープログラムの実行結果:
リーリー
http://www.bkjia.com/PHPjc/752468.html