無名関数、技術初歩垂れ流し。

20170819

Logging


無名関数、技術初歩垂れ流しときます。
わからない人はわからないかもしれませんが、
分かる人にはわかるという・・・何ともそのまま何ですけどね。
無名関数を使うにあたってキーになるのは USEとcall_user_funcかな。
これさえ覚えとくと便利かもしれないなと思います。
習うより慣れよということでソースコード貼っときます。
じぶんの脳内は文字を読んで理解しているタイプではないので
図や絵柄など空間的な感覚でアルゴリズムを覚えています、なので
仕様書とか読んでもあまり頭に入ってくることがないのですね。
それよりかは、トライアンドエラーを繰り返して覚えるか、口頭などで
事細かに説明してもらったほうが、頭に入ってくることが多いです。
 

<?php
//無名関数1
$q = function($s){
    $ss = $s."FF15!!]]";
    return $ss;
};
define("ff",$q("[[ now on sale "));
//var_dump(ff);
//無名関数2
$hoge = ff;
$f = function() use ($hoge){
    return explode(" ",$hoge);
};
//var_dump($f());
//無名関数3
function mumei(){
    $m = 2222;
    $d = 22;
    return function() use ($m,$d){
      $a = $m * $d;
      return $a;
    };
}
$a = mumei();
//var_dump($a());
//無名関数4
if(is_array($s =
    call_user_func(function(){
        $r = [];
        for($i=0;$i<10;$i++){
            $r[$i] = $i;
        }
        return $r;
    })
)){
    //var_dump($s);
}
print(implode("<br>",explode("\n",'
string(23) "[[ now on sale FF15!!]]"
array(5) {
  [0]=>
  string(2) "[["
  [1]=>
  string(3) "now"
  [2]=>
  string(2) "on"
  [3]=>
  string(4) "sale"
  [4]=>
  string(8) "FF15!!]]"
}
int(48884)
array(10) {
  [0]=>
  int(0)
  [1]=>
  int(1)
  [2]=>
  int(2)
  [3]=>
  int(3)
  [4]=>
  int(4)
  [5]=>
  int(5)
  [6]=>
  int(6)
  [7]=>
  int(7)
  [8]=>
  int(8)
  [9]=>
  int(9)
}
')));

著者名  @taoka_toshiaki

※この記事は著者が30代前半に書いたものです.

Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki

OFUSEで応援を送る

タグ

$i&lt, AM, array, br&gt, call_user_func, function mumei, hoge, implode, int, now on sale FF15, return explode, return function, string, var_dump, アルゴリズム, トライアンドエラー, 仕様書, 技術初歩垂れ流し, 無名関数,


階層ツリーの表示非表示切り替え、無限回廊。

20170819

Logging


仕事で階層ツリーの無限回廊に対応できるコードを書くことになった?
コードは記載しませんがdemoサイトはUPしますね。
無限回廊を作るのは、再起処理が出来ないとおそらく作れません。
表示非表示に切り替える方法も再起処理が一部入っています。
demoサイトでは4階層まで?しか無いのですが
これを5階層にしても耐え得ることが可能です。
demoサイトのソースコードが読めれば
改修することも可能かと思います、ちなみにこの方法より
もっと良い方法がアレばそちらを採用したいです、我こそは
という方、ツイッターのダイレクトメールにご意見ください。
https://twitter.com/zip358com
今回の仕事の案件ではパラメータ有り無しでページを動的に切り替えを
行わないといけないのです。なので・・・そういう事にも耐え得る事のできるため
クリックした時点の$(this)をパラメータとして投げれないものかと考えたのですが
いろいろググってみたものの、それらしきサイトは見つからなかったので諦めました。
階層ツリーの無限回廊とか・・
案外簡単に出来ると思いがちですが、ちょっとテクが必要になります。
ちなみに階層ツリー表示のコードは再起処理をするので30行程度なんですけどね。
じぶんは再起処理、大好物なんですね。
あまりこういうコードは書かないから、頭の体操にはなるかなと
思います。
最後にdemoサイトのURLを載せときますね。
 
https://zip358.com/tool/this/
(何を書いているかわからない人、まずは動作させてみてください。)

 

著者名  @taoka_toshiaki

※この記事は著者が30代前半に書いたものです.

Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki

OFUSEで応援を送る

タグ

AM, demoサイト, アルゴリズム, アルゴリズム図鑑, コード, じぶん, ソースコード, ダイレクトメール, ツイッター, テク, パラメータ有り無し, 再起処理, 大好物, 方法, 案件, 無限回廊, 表示非表示切り替え, 階層ツリー, 階層ツリー表示,