@Blog{zip358.com}
日常日誌からプログラムやYOUTUBER紹介、旅日記まで日々更新中です。
今年最後のブログ…
2019.12.31
今年もユーザーさんに支えられブログを続けることが出来ました。
過去のブログを他のブログに移行していたのですが、
12月にそのブログももとに戻し、更新頻度も前と同じに変更しました。
(※そのブログも来年から不定期で更新していきます)
毎年の恒例の未来予想の話を記載します、
来年(2020年)、何が起こるかといえば自分は
人工知能のサービスが日本でも大々的に
各企業(中小企業含む)が使用されるようになると思います。
また、スマートグラスというものがもしかしたら
来年浸透するかもしれないなと思っています。
これはスマホに続く便利ツールになると感じています。
あと日本でも5G(ファイブジー)のサービスが開始されますよね。
これは新しい風になると思います、通信費がいまの4G程だと
浸透するのはかなり早いと思います、また来年から
ギガ通信の制限がなくなるそうなので、
いろいろな事が変わり始める年になると思います。
※今年最後のブログ記事を見て頂きありがとうございます。
良いお年を!!
著者名 @taoka_toshiaki
※この記事は著者が30代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
2020, 4, 5, いま, いろいろ, かなり, ギガ, クラス, こと, これ, サービス, シー, スマート, スマホ, ツール, ファイブ, ブログ, もと, もの, ユーザー, 不定期, 中小企業, 予想, 事, 人工, 今年, 他, 企業, 何, 使用, 便利, 制限, 前, 変更, 年, 恒例, 日本, 更新, 最後, 未来, 来年, 毎年, 浸透, 知能, 移行, 程, 自分, 記事, 記載, 話, 通信, 過去, 開始, 頻度, 風,
日本語で機械学習のことを解説しているチャネル。
2019.12.14
探していたらあったよSONY!!。
昨日、「YOUTUBEで日本語で人工知能の解説している動画あまりないよね。」
と記載していたのだけど・・・。
解説している動画がありました。
SONYがオープンで解説している、、やっぱりこういう事を
公開しているということは人手が足りないですね。
人工知能(機械学習)を理解してゴニョゴニョして
遊びができないひとが結構多いだなとちなみに品質の良いモデル作りが
機械学習では要になるそうです。
勉強したい方は下記のリンクからどうぞ
https://www.youtube.com/channel/UCRTV5p4JsXV3YTdYpTJECRA
著者名 @taoka_toshiaki
※この記事は著者が30代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
3, 4, 5, channel-, com, JsXV, SONY, UCRTV, youtube, YTdYpTJECRA, こと, ゴニョゴニョ, チャネル, ひと, モデル, リンク, 下記, 事, 人工, 人手, 公開, 勉強, 動画, 品質, 学習, 方, 日本語, 昨日, 機械, 理解, 知能, 要, 解説, 記載,
グーグルブレインって何?
2019.12.08
ニュースピックスのNEXTという番組でグーグルのことを解説していたのだけど、とても面白い内容だった。
また他にも5G(ファイブジー)になるとどうなっていくのかなどの内容も興味深い話だった。
グーグルブレインって何?の答えは下記の動画を参照すると分かりやすく解説しています。
ぐぐると答えは出ているのだけど・・・。
※動画、NewsPicksから差し替えました。
ニュースピックスの動画が見えない人のために少し解説します。グーグルブレインとはグーグルの人工知能研究機関のことを指します、その中では自由な人工知能の研究を行ってよいとのことです、そして特に利益が出なくても良いとのこと。ニュースピックスのNEXTではいろいろな企業の解説していて毎回面白い内容になっていて自分は好きです、ただざっくり感があります、もっと深い話を聞きたい人にはもう少し長めでもよいじゃないかなと思うときもありますが、ニュースピックス動画の中でも今の所NEXTシリーズが面白いかなと思います。
著者名 @taoka_toshiaki
※この記事は著者が30代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
5, newspicks, NEXT, いろいろ, グーグル, こと, シー, シリーズ, ため, とき, ニュース, ピックス, ファイブ, ブレイン, 下記, 中, 人, 人工, 今, 他, 企業, 何, 内容, 利益, 動画, 参照, 少し, 感, 所, 機関, 毎回, 番組, 知能, 研究, 答え, 自分, 自由, 解説, 話, 長め,
googleスプレッドシートの値を取得することは可能ですが!
2019.11.24
googleスプレッドシートの値を取得することは可能ですが動的な値を取得することは不可能です。
動的処理というのはスプレッドシートの関数などで値を表示している情報をPHPなどで外部取得することは不可能です。
※方法があるようでしたら、教えて頂ければありがたいです。
なお、PHPからスプレッドシートの値などは変更可能です。
今回は値の取得に関しての方法を記載しております。
手順
1.グーグルさんからグーグルスプレッドシートのAPIKEYを取得する。
2. グーグルスプレッドシートを作成しスプレッドシートのID部分を取得する。
3.サーバ上にComposerをインストールし、下記のコマンドを実行する。
composer require google/apiclient:"^2.0"
下記のソースのAPIキー、スプレッドシートIDの部分を取得した値に置き換える。
<?php
require_once __DIR__ . '/vendor/autoload.php';
//$keyFile = __DIR__. "/credentials.json";
define("APIKEY","APIキー");
define("SPID","スプレッドシートID");
$spreadsheetId = SPID;
$range ="Sheet1!A1:B123";
$client = new Google_Client();
$client->setApplicationName("Spreadsheet");
$client->setDeveloperKey(APIKEY);
$scopes = [Google_Service_Sheets::SPREADSHEETS];
$client->setScopes($scopes);
$service = new Google_Service_Sheets($client);
$response = $service->spreadsheets_values->get($spreadsheetId, $range);
// TODO: Change code below to process the `response` object:
echo '<pre>', var_export($response->getValues()), '</pre>', "n";
結構ハシオッタ説明になりますが、こちらでGoogleスプレッドシートの値を取得または操作が可能となります。
著者名 @taoka_toshiaki
※この記事は著者が30代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
1, 2, 2.0, 3, 4, 5, A`, apiclient, APIKEY, com, Composer, et, fCs, Google, https, ID, php, quot, require, watch, www, youtube, インストール, グーグル, こと, コマンド, サーバ, シート, スプレッド, ソース, 下記, 不可能, 今回, 作成, 値, 処理, 取得, 可能, 変更, 外部, 実行, 情報, 手順, 方法, 表示, 記載, 部分, 関数,
オレオレ無名関数の再帰処理。
2019.10.26
無名関数はよく使います。ちょっとしたモノを書きたい時、
オレオレ無名関数を書いて済ますことが多くなりました。
無名関数の良いところは無名関数を使用する手間にメソッドがあるので
確認しやすいというところですね。
<?php
$mumei = function ($tasu=0) use(&$mumei){
if($tasu<=150){
$tasu = $tasu + 5;
print $tasu."n";
return $mumei($tasu);
}
return $tasu;
};
//オレオレ無名関数の使い方は…小道具ぐらい程度のもの。
print $mumei();
// 5
// 10
// 15
// 20
// 25
// 30
// 35
// 40
// 45
// 50
// 55
著者名 @taoka_toshiaki
※この記事は著者が30代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
0, 10, 15, 150, 20, 25, 30, 35, 40, 45, 5, amp, function, if, lt, mumei, nbsp, php, print, return, tasu, use, オレオレ, こと, ところ, メソッド, もの, 使い方, 使用, 再帰, 処理, 小道具, 手間, 時, 済, 無名, 確認, 程度, 関数,
画像をタイル状に分離して一括ダウンロードさせるジェネレーター
2019.09.07
画像をタイル状に分離して一括ダウンロードさせるジェネレーターを
作ってみました。画像は自動的に削除されます?
あることをすれば他人の画像がアップした画像も削除されます。
ちなみに一括ダウンロードbuttonを押すと画像がサーバー上に保存され
強制ダウンロードが始まります。
動作はブラウザChromeオンリーです。
また一括ダウンロードを押すと複数のファイルを一括ダウンロードするか
どうかの問い合わせが表示されますので「はい」を
選択してください。尚、30秒以内に保存されていないファイルは
次々と削除されます。
サイトはこちらから
https://zip358.com/tool/demo5/index-14.html
ソースコードは下記になります。
ページ(base64生成+画像ダウンロード処理)
追記:zipファイルにより格納するように処理を変更しました。
参考にしたサイト:https://ex1.m-yabe.com/archives/4215
<!DOCTYPE html>
<!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
<!--[if IE 7]> <html class="no-js lt-ie9 lt-ie8"> <![endif]-->
<!--[if IE 8]> <html class="no-js lt-ie9"> <![endif]-->
<!--[if gt IE 8]><!--> <html class="no-js"> <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>画像分離してダウンロード:画像分離ジェネレーター</title>
<meta name="description" content="画像分離してダウンロード:画像分離ジェネレーター">
<meta name="viewport" content="width=device-width, initial-scale=1">
<script src="../jquery/jquery-3.4.1.js"></script>
<link rel="stylesheet" href="../bootstrap/css/bootstrap.css">
<!-- Global site tag (gtag.js) - Google Analytics -->
<script async src="https://www.googletagmanager.com/gtag/js?id=UA-71682075-1"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'UA-71682075-1');
</script>
<style>
body{
background-color: black;
color: antiquewhite;
}
img{
margin:10!important;
padding:10!important;
}
#container{
width: 100%;
}
#container img{
margin:10px;
}
</style>
</head>
<body>
<span id="bat"></span><a id="dl"></a>
<input class="form-control" type="file"></input>
<div id="container"></div>
<script>
$(function(){
$("[type=file]").on("change",function(){
$('#container').html("");
$("#bat").html("");
console.log($(this));
if(!$(this).prop('files')[0].type.match(/[png|jpg|jpge|gif]/)){
alert("ファイル形式エラー");
return false;
}
var canvas = document.createElement('canvas');
var reader = new FileReader();
reader.onload = function(event) {
var image = new Image();
image.onload = function() {
sprite = {width:50,height:50};
canvas.width = sprite.width;
canvas.height = sprite.height;
var ctx = canvas.getContext("2d");
var x = 0;
for(var i=0; i*sprite.height<image.height; i++){
for(var j=0; j*sprite.width<image.width; j++){
ctx.drawImage(
image,j*sprite.width,i*sprite.height,
sprite.width,sprite.height,
0,0,
sprite.width,sprite.height
);
var spriteElement = new Image;
spriteElement.src= canvas.toDataURL();
$('#container').append(spriteElement);
}
}
$("#bat").html("<input type='button' value='一括ダウンロード' onclick='bat_img()'>");
}
image.src = event.target.result;
}
reader.readAsDataURL($(this).prop('files')[0]);
});
});
function bat_img(){
var data = [];
for(var i=0; i< $("img").length;i++){
data.push({"base64":$("img").eq(i).attr("src"),"no":i});
}
$.ajax({
type: 'POST',
url: 'bat_img.php',
data:{"obj":data},
dataType: 'json'
}).done(function(obj){
if(obj[obj.length - 1 ].chk=="ok"){
var link = document.getElementById("dl");
link.href = obj[obj.length - 1].zippath;
link.download = "zipimg.zip";
link.click();
var data2 = [];
for(var i = 0 ; i < obj.length ; i++){
if(i==0){
data2.push({Path:obj.path,no:obj.no,t:obj.t,"zipimgpath":obj[obj.length - 1].zippath});
}else{
data2.push({Path:obj.path,no:obj.no,t:obj.t});
}
}
var del = function(){
$.ajax({
type: 'POST',
url: './bat_del.php',
data:{"obj":data2},
dataType: 'json'
});
};
del();
}
});
}
</script>
</body>
</html>
<?php
$i=0;
foreach($_POST["obj"] as $key=>$val){
$b64 = base64_decode(str_replace("data:image/png;base64,","",$val["base64"]));
$no = (int)$val["no"];
$t = time();
$Path = "./bat_img/tmp/$t-$no.png.webp";
$re = @file_put_contents($Path,$b64);
if($re){
$obj[$i]["chk"] = $re?"ok":"ng";
$obj[$i]["name"] = "$t-$no.png.webp";
$obj[$i]["path"] = $Path;
$obj[$i]["no"] = $no;
$obj[$i]["t"] = $t;
$i++;
}
}
$obj[--$i]["zippath"] = zipfile($obj);
print json_encode($obj);
function zipfile($obj){
$ZipFiles = function($obj){
foreach($obj as $key=>$val){
$path[] = $val["path"];
}
return $path;
};
$Zip_Files = $ZipFiles($obj);
$zipFileName = time().'_zipimg.zip';
set_time_limit(0);
$zip = new ZipArchive();
$zipTmpDir = './tmp/zip/';
$result = $zip->open($zipTmpDir.$zipFileName, ZIPARCHIVE::CREATE | ZIPARCHIVE::OVERWRITE);
if( $result !== true ){ //エラー処理
echo 'error!';
exit();
}
foreach ($Zip_Files as $key=>$filepath) {
$filename=basename($filepath);
// ZIP圧縮するファイルを追加
// ファイルパス・ファイル名としないと圧縮ファイルを解凍するとフルパスになる
$zip->addFile($filepath,$filename);
}
//ZIP 出力
$zip->close();
return $zipTmpDir.$zipFileName;
}
<?php
unlink($_POST["obj"][0]["zipimgpath"]);
foreach($_POST["obj"] as $key=>$val){
$Path = $val["Path"];
$no = (int)$val["no"];
$t = (int)$val["t"];
$cmd = function(){
foreach(glob("./bat_img/tmp/*") as $file_name){
$command = "rm -rf " . realpath($file_name);
exec($command);
}
};
if(pathinfo($Path)["extension"]=="png" and preg_match("/bat_img\/tmp/",$Path)){
if(is_file($Path)){
sleep(30);
unlink($Path);
}else{
$cmd();
}
}else{
$cmd();
}
}
著者名 @taoka_toshiaki
※この記事は著者が30代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
1, 14, 30, 358, 4, 5, 64, archives, base, button, Chrome, com, demo, ex, html, https, index, m-yabe, tool, www, zip, アップ, オンリー, コード, こちら, こと, サーバー, サイト, ジェネレーター, ソース, タイル, ダウンロード, はい, ファイル, ブラウザ, ページ, 一括, 下記, 他人, 保存, 処理, 分離, 削除, 動作, 参考, 問い合わせ, 変更, 強制, 格納, 生成, 画像, 表示, 複数, 追記, 選択,
変なコードを書いてしまった。それはいつものこと(笑)
2019.08.10
変なコードを書いてしまった。
PHPにstr_repeatという関数が存在しているのだけど
何のために使用するのか全然わからない。関数の内容は任意の文字を
指定回数、繰り返した文字列として返してくれるというものです。
試しにその関数を使用し変なコードを書きました。
茶目っ気ですので…。これがPCに負担がかかるとか
無限ループとかの処理にすると御縄なんでしょうけど・・・。
サンプルコードはこちらから
https://zip358.com/tool/demo5/index-11.php
<!DOCTYPE html>
<!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
<!--[if IE 7]> <html class="no-js lt-ie9 lt-ie8"> <![endif]-->
<!--[if IE 8]> <html class="no-js lt-ie9"> <![endif]-->
<!--[if gt IE 8]><!--> <html class="no-js"> <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title></title>
<meta name="description" content="">
<meta name="viewport" content="width=device-width, initial-scale=1">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
<script src="../jquery.tubular.1.0.1/js/jquery.tubular.1.0.js"></script>
<link rel="stylesheet" type="text/css" href="../jquery.tubular.1.0.1/css/screen.css">
<script>
$('document').ready(function() {
var options = {
videoId: '760lRwLKFF0',
mute: true,
};
$('#bgmovie').tubular(options);
});
</script>
<style>
body{
background-color: #000;
color: #fff;
font-size: 80px;
line-height: 80px;
}
p{
color: #38a9c5;
}
</style>
</head>
<body>
<div id="bgmovie">
<!--[if lt IE 7]>
<p class="browsehappy">You are using an <strong>outdated</strong> browser. Please <a href="#">upgrade your browser</a> to improve your experience.</p>
<![endif]-->
<?php
$str = str_repeat("高知 よさこい 踊る,",7);
var_dump(str_getcsv($str));
?>
<p class="oshite" data-oshite="<?=$str?>"style="text-decoration: underline">▼おして知るべし</p>
※おして知るべしをクリックすると7ウィンドウ開きますよ!!
<?php
foreach(str_getcsv($str) as $val){
?>
<?php
}
?>
</div>
<script>
$(function(){
$(".oshite").on("click",function(){
let oshite = $(this).attr("data-oshite").split(",");
for(var i = 0 ; i < oshite.length ; i++){
if(oshite[i]!==""){
window.open("https://twitter.com/search?src=typed_query&q=" + encodeURIComponent(oshite[i]));
}
}
});
});
</script>
<script src='https://vjs.zencdn.net/7.6.0/video.js'></script>
</body>
</html>
著者名 @taoka_toshiaki
※この記事は著者が30代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
--, 11, 358, 5, 7, 8, 9, class, com, demo, DOCTYPE, endif, gt, html, IE, if, index, lt, lt-ie, no-js, PC, php, repeat, STR, tool, zip, いつも, コード, こちら, こと, これ, サンプル, それ, ため, もの, ループ, 任意, 何, 使用, 内容, 処理, 回数, 変, 存在, 指定, 文字, 文字列, 無限, 縄, 茶目っ気, 負担, 関数,
xdebugの動作仕方が分からなかったのでメモ。
2019.06.29
Xdebugを動作させます。(F5)
次にブラウザを開き動作させたいURLを記入しエンター:D
すると…
debug出来るようになります、設定等は割愛します。
ちなみにphp.iniの方はこんな感じにしてます。
zend_extension ="/xxx/xdebug.so"
xdebug.remote_autostart=1
xdebug.remote_enable=1
xdebug.remote_port=9000
xdebug.remote_connect_back = 1
xdebug.remote_host=IP Address
著者名 @taoka_toshiaki
※この記事は著者が30代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
1, 5, 9000, Address, autostart, back, connect, debug, enable, extension, host, ini, IP, php, port, remote, so, url, xdebug, xxx, zend, エンター, ブラウザ, メモ, 仕方, 割愛, 動作, 感じ, 方, 記入, 設定,
MYSQL8以降ウィンドウ関数対応=>ランキング。
2019.05.06
MYSQLでもランキング機能(rank())が使えるようになったとさ。日本国内のレンタルサーバーは最新の技術というより
一歩遅れた技術で運営している理由はリスクを取らないためにそうしているのだろうなとヒシヒシと感じます。
### support mysql>8.0.2 ウィンドウ関数
```sql
select id,namae, rank() over(order by code_total asc)as code_rank from code_data;
```
### code_data
|id|namae|code_total|
|---|---|---|
|1|kaonashi|15|
|2|mononoke|75|
|3|asitaka|52|
|4|san|87|
|5|theta|99|
著者名 @taoka_toshiaki
※この記事は著者が30代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
```, ---, 1, 15, 2, 3, 4, 5, 52, 75, 8, 8.0.2, 87, 99, as, asc, asitaka, BY, Code, data, from, gt, ID, kaonashi, mononoke, MYSQL, namae, order, over, rank, san, select, SQL, support, theta, total, ウィンドウ, サーバー, ため, ランキング, リスク, レンタル, 一, 国内, 対応, 技術, 日本, 最新, 機能, 理由, 運営, 関数,
フリーランスという働き方が浸透するのかな?
2019.04.02
氷河期時代、フリーランスやフリーターというものが
流行した時期があったのだけど、今回はなんだか少し以前とは
違うかもなとこの頃、思い始めています。
何故か。
それは国が結構力を入れているし、
フリーランスに対して企業もサービスを打ち出してきた。
フリーランスに正社員と同じ福利厚生を行ってくれる
プラットフォーム企業まで現れて、
もうIT業界はこの方向へ進む可能性が高くなった気がする。
https://lp.re-shine.jp
法整備され今までとは違う働き方は進んできている。
世の中変わってきている気がします。
そして5Gやクラウドサービス、高速通信などが
働き方の手助けになっていることは間違いないので
はないかなと感じます。
著者名 @taoka_toshiaki
※この記事は著者が30代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
5, IT, jp, lp, nbsp, re-shine, クラウド, こと, サービス, ソレ, ドコ, プラットフォーム, フリー, フリーター, もの, ランス, 世, 中, 今回, 以前, 企業, 何故, 働き方, 厚生, 可能性, 国, 少し, 手助け, 方向, 時代, 時期, 業界, 正社員, 気, 氷河期, 法整備, 流行, 浸透, 福利, 結構, 通信, 頃, 高速,
映画、ウィンストン・チャーチル/ヒトラーから世界を救った男 (字幕版)を観ましたよ。
2019.03.09
映画、ウィンストン・チャーチル/ヒトラーから世界を救った男 (字幕版)を観ましたよ。これは良かった。
成功は決定的ではなく、失敗は致命的ではない。大切なのは続ける勇気だ
Success is not final, failure is not fatal: it is the courage to continue that counts
著者名 @taoka_toshiaki
※この記事は著者が30代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
5, 50, com, continue, counts, courage, failure, fatal, FINAL, is, IT, lSG, MIoE, nbsp, not, success, that, The, To, youtube, ウィンストン, コレ, チャーチル, ヒトラー, 世界, 勇気, 大切, 失敗, 字幕, 成功, 映画, 男,
PHPの無名関数の使い道が未だにわからないし…
2019.03.09
<?php
$mumei = function()
{
if($cnt = func_get_args())
{
foreach($cnt as $key=>$value)
{
print func_get_arg($key);
}
}
};
$mumei(1,2,3,4,5,6);
わからない、未だにわからないし、使う機会が少ないのだけどいったいどこに使うのか。
追記:
2021年の今、無名関数を使ってコードを書くことが増えました、PHP8になりオブジェクト指向が洗練されてきています。今後、無名関数を使用してコードを書くこともあると思います。因みにJSの方が無名関数でコードを書くことが多いですね。
PHPでの無名関数の問題点は、頻繁に無名関数ばかり使用していると他のエンジニアが読みづらく感じる所かもしれません。特にPHPの昔のバージョンになればなる程、読みづらいと思います。
著者名 @taoka_toshiaki
※この記事は著者が30代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
1, 2, 2021, 3, 4, 5, 6, 8, arg, args, as, cnt, foreach, FUNC, function, GET, gt, if, JS, key, lt, mumei, php, print, value, エンジニア, オブジェクト, コード, こと, どこ, 今, 今後, 他, 使い道, 使用, 問題点, 所, 指向, 方, 未だ, 機会, 洗練, 無名, 追記, 関数, 頻繁,
再帰処理の考え方は単なるこれだけのこと。
2019.02.27
再帰処理の考え方は単なるこれだけのこと。
forやwhile文などでループできない処理の代替えだと
思うとわかりやすいかも。
<?php
print loop(-20);
function loop($i,$ii=1):int
{
if($i>=5)
{
return $i;
}
$i++;
$ii = $ii * $i;
print "$i=$in";
print "$ii=$iin";
if($ii==0)
{
$ii = 20;
}
return loop($i,$ii);
}
著者名 @taoka_toshiaki
※この記事は著者が30代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
0, 1, 20, 5, For, function, gt, if, Ii, int, loop, lt, php, print, return, while, こと, これだけ, ループ, 代替え, 再帰, 処理, 文, 考え方,
javascriptのアロー関数というものを使ってみた。
2019.02.24
javascriptのアロー関数というものを使ってみた。
関数と同じだよねとおもっていると落とし穴があるみたい。
どうもグローバル変数が挙動不審みたいなんです。
/* アロー関数 */
let func1 = a => a + 3;
console.log(func1(5));
let func2 = (a,b)=>{
return a + b + 3;
}
console.log(func2(1,2));
著者名 @taoka_toshiaki
※この記事は著者が30代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
1, 2, 3, 5, console, FUNC, gt, javascript, let, log, return, アロー, グローバル, もの, 変数, 落とし穴, 関数,
この道を観てきましたよ #映画
2019.01.13
悪くないと思うけど、凄く受けの良い映画でも無い、ただ意義有る映画だとは思います。ぜひ、安倍首相に観てもらいたい映画です。
著者名 @taoka_toshiaki
※この記事は著者が30代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
016, 4, 5, 7, asin, com, DVD, FEM, jp, MC, vRimxJB, youtube, 安倍, 意義, 日, 日本, 映画, 道, 首相,
VBAオブジェクトを自動生成しイベントを付与する。
2019.01.12
VBAオブジェクトを自動生成しイベントを付与する。
サンプルコードです。
ダウンロードはこちら
https://zip358.com/tool/sample.zip
Dim chg_class(0 To 5) As chg
Public Sub objset()
Dim obj_ctl As Control
Dim i As Integer
For i = LBound(chg_class) To UBound(chg_class)
Set obj_ctl = UserForm1.Controls.Add("Forms.TextBox.1", "Box" & i)
obj_ctl.Top = 10 + 20 * i
obj_ctl.Width = 200
obj_ctl.Height = 20
obj_ctl.Text = "ここを変更してみて、またはダブルクリック(" & i & "番)"
Set chg_class(i) = New chg
chg_class(i).set_evn obj_ctl, i
Set obj_ctl = Nothing
Next i
End Sub
Private WithEvents TextB As MSForms.TextBox
Private index_no As Integer
Public Sub set_evn(hoge_obj As MSForms.TextBox, hoge As Integer)
Set TextB = hoge_obj
index_no = hoge
End Sub
Private Sub TextB_Change()
MsgBox TextB.Text 'UserForm1("Box" & index_no)
End Sub
Private Sub TextB_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
MsgBox TextB.Text 'UserForm1("Box" & index_no)
End Sub
Private Sub TextBox1_Change()
MsgBox TextBox1
End Sub
Private Sub CommandButton1_Click()
End Sub
Private Sub UserForm_Click()
End Sub
著者名 @taoka_toshiaki
※この記事は著者が30代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
0, 1, 10, 20, 200, 358, 5, Add, amp, as, Box, chg, class, com, Control, Controls, ctl, Dim, For, Forms, Height, Integer, LBound, obj, objset, public, sample, set, Sub, Text, TextBox, To, tool, TOP, UBound, UserForm, VBA, Width, zip, イベント, オブジェクト, コード, ここ, こちら, サンプル, ダウンロード, 付与, 変更, 自動生成,
javascriptを勉強中
2018.12.15
var a = 3;
var b = 10;
var obj = {
hoge:function(a){
a = a + a;
return a;
},
a:a = a && 5,
b:b = b || 3
};
console.log(obj.hoge(2));
console.log(obj.a);
console.log(obj.b);
上記のCodeを動かすと仕事と表示されます(笑)、4,5,10と表示されます。
何故そうなったかを考えるとキリがないのでそういうものだと
思ったほうが良いかもしれないです。
説明するとhogeはオブジェクトです。あとは変数とIF文の省略系を
記述しているだけです、実際は=もいらないですが・・・。
わかりやすく自分なりに記載したつもりです。
javascriptライブラリってこういうのが何百行も記載して成り立っていますが
概念はこういう事です。自分は基本的に概念しか覚えないのです。
何故、そうしているか・・・自分が怠惰な人間だからです。
著者名 @taoka_toshiaki
※この記事は著者が30代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
10, 2, 3, 4,5,10, 5, amp, Code, console, function, hoge, if, javascript, log, obj, return, var, あと, オブジェクト, キリ, つもり, もいら, もの, 上記, 仕事, 勉強, 変数, 実際, 文, 省略, 自分, 表示, 記載, 記述, 説明,
グーグルアーススタジオ(Google EarthStudio)って面白そうですね。
2018.12.10
グーグルアーススタジオ(Google EarthStudio)って面白そうですね。
Google Earthに録画機能が付いたものだと思ったらわかりやすいかも。
今の所、誰もが使用することが出来る機能ではないけれど
いずれは誰もが使用できるサービスになるみたいです。
著者名 @taoka_toshiaki
※この記事は著者が30代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
5, 6, com, Earth, EarthStudio, Google, tjtVDkA, youtube, アース, いずれ, グーグル, こと, サービス, スタジオ, もの, 今, 使用, 所, 機能, 誰, 録画,
さくらレンタルサーバーとかで制限以上のクロンタブ(crontab)を使う方法。
2018.11.08
さくらレンタルサーバーとかで制限以上のクロンタブ(crontab)を使う方法
10年ぐらいまえのコードを見直して改善したコードが下記になります。
10年前はクラスを使わない方法で構築したのだけど、今回はクラスの概念を
使って構築。ここ何年かで自分のコーディングの技術は上がっているかといえば
そうでもないですが、昔よりかは技術の幅は広がっていると思いたいw
※qiita日付は数年前にUPしたのですけど、コード自体は10年前のコードです。
追記:2022/10/08 修正:詳しくはコチラ
https://qiita.com/question909/items/8f1df9b62ab4fba76243
<?php
//5分刻みに対して有効な無限クローン 処理が負荷の場合どうなるかは知りません。
date_default_timezone_set('Asia/Tokyo');
class cron{
public function d_m($obj)
{
if($obj->m==="*")return true;
if(preg_match("/,/",$obj->m))return $this->comma($obj->m,date("m"));
if((int)$obj->m === (int)date("m"))return true;
return false;
}
public function d_d($obj)
{
if($obj->d==="*")return true;
if(preg_match("/,/",$obj->d))return $this->comma($obj->d,date("d"));
if((int)$obj->d === (int)date("d"))return true;
return false;
}
public function d_H($obj)
{
if(preg_match("/\*\/[0-9]{1,2}/",$obj->H)){
$H = explode("/",$obj->H);
if((int)$H[1]>0 && ((int)date("H") % (int)$H[1])===0)return true;
}else{
if($obj->H==="*")return true;
if(preg_match("/,/",$obj->H))return $this->comma($obj->H,date("H"));
if((int)$obj->H === (int)date("H"))return true;
}
return false;
}
public function d_i($obj)
{
if(preg_match("/\*\/[0-9]{1,2}/",$obj->i)){
$i = explode("/",$obj->i);
if((int)$i[1]>0 && ((int)date("i") % (int)$i[1])===0)return true;
}else{
if($obj->i==="*")return true;
if(preg_match("/,/",$obj->i))return $this->comma($obj->i,date("i"));
if((int)$obj->i === (int)date("i"))return true;
}
return false;
}
//曜日 0=日曜日 6=土曜日
public function d_w($obj)
{
if((int)$obj->w[date("w")]===1)return true;
return false;
}
public function comma($c="",$t=""){
if($c==="")return false;
if($t==="")return false;
$flg = false;
foreach(explode(",",$c) as $cc){
if((int)$cc===(int)$t)$flg = true;
}
return $flg;
}
public function d_command($obj){
if($obj->command){
exec($obj->command . " > /dev/null &");
}
return true;
}
}
if ($argv[1]) {
$filename = $argv[1];
if(is_file($filename)){
$jsn = json_decode(file_get_contents($filename));
$cron = new cron();
try {
foreach($jsn as $obj){
if($cron->d_m($obj)){
if($cron->d_d($obj)){
if($cron->d_H($obj)){
if($cron->d_i($obj)){
if($cron->d_w($obj)){
$cron->d_command($obj);//波動拳{{{{
}
}
}
}
}
}
} catch (\Throwable $th) {
print $th->getMessage();
}
}
}
著者名 @taoka_toshiaki
※この記事は著者が30代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
08, 10, 2022, 39, 5, Asia, class, cron, crontab, date, default, function, if, lt, obj, php, public, qiita, set, timezone, Tokyo, UP, w, クラス, クローン, クロン, コーディング, コード, ここ, コチラ, サーバー, さくら, タブ, まえ, レンタル, 下記, 今回, 何年か, 修正, 処理, 分刻み, 制限, 場合, 幅, 技術, 改善, 数, 方法, 日付, 昔, 有効, 概念, 構築, 無限, 自体, 自分, 負荷, 追記,
日々淡々と
2018.05.02
日々淡々と生きてます。
この画像を作っている時に、小学生の時に切り絵をした事がふと蘇りました。
自分、小学生や中学生の時に何をしていたのかという記憶はほぼなし、出来事の記憶がちらほら有るぐらいで
あまり覚えていませんね。ちなみにこの画像は背景はグラデーションを使用し波のフリー画像を持ってきて加工をおこなってこんな感じに仕上げました。じぶんの画像は大体は苦労せずにお手軽に作成することが出来ると思います、制作にかける時間は大体、5分です。
凝ったものになると20分ぐらいの時もありますが、シンプルなものは大体、それぐらいです、飽きもせずこういうの
自前で作っていますが、こういうの好きですから続きます。
継続は力なりとは言いますが、アレは半分ウソだと思います。確かにある一定度は伸びますが、技は本を読んだり
誰かに教えてもらわないと身につかないと思います。自分は未だにイラレの参考書をちら見した程度です、本当は
ロゴとかそういうのが自分で作れたら良いなと思っています。
著者名 @taoka_toshiaki
※この記事は著者が30代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
20, 5, アレ, イラレ, ウソ, グラデーション, こと, じぶん, シンプル, それ, フリー, もの, ロゴ, 一定, 中学生, 事, 何, 作成, 使用, 出来事, 切り絵, 制作, 力, 加工, 半分, 参考書, 大体, 小学生, 感じ, 技, 日々, 時, 時間, 未だ, 本, 本当, 波, 画像, 程度, 継続, 背景, 自分, 自前, 苦労, 記憶, 誰か, 身,
5月の雨、6月の晴れ
2018.03.18
東京に住んでいた頃、雨の電車通勤がとても嫌でした。
高知で住んでいると通勤は殆どの人は車です、たぶんこれから先もそうなんだと思います。自分の世代が60代になる頃には自動運転とかが当たり前になっている世の中になるでしょう。
ちなみに今、自分は30代後半ですけど、心は20代前半の気分です。
40代になったとしても何にも変わらない気がします。
トイウコトハ、50代、60代と歳寄せてもあまり変わりそうにないです、あくまでも自分の場合ですが他の人はそれなりに変わっていくだろうと思いますよ。
じぶんは「新しい技術に興味、関心があります」なので少しも変わらないだろうと思います。このままの脳処理で行けば同じかなと思います。記憶力も20代から何も変わらないので変わらない気がします。
技術の節目ってあると思うです。
例えばパーソナルコンピュータが登場した時、インターネットが登場した時、大きく世の中が変わっていきます。今後、大きく変わることと言えばAIがAI2.0になった時、自動運転が普及した時、再生医療が確立した時、5G通信が普及した時に大きく世の中変わっていくだろうと思います。
世間では、働き方改革とか言っていますけど、それで世の中が変わっていくのではないです、世の中が変わるのは技術の進歩が飛躍した時だという事です、技術の単価と普及率は当たり前ですが、比例の関係にあります。単価が安いと普及率は上がります。
なので、5G、IOT、AI2.0、再生医療=自動運転の順に世の中に普及していくのかと思います。
そんなモノで2019年には5Gというのが都市から浸透していくと思います、新しい技術にふれるというのは情報を知るよりももっと可能性を感じられるのではないかと思います。
著者名 @taoka_toshiaki
※この記事は著者が30代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
2.0, 20, 30, 40, 5, 50, 6, 60, AI, インターネット, こと, このまま, これ, コンピュータ, じぶん, それなり, トイウコトハ, パーソナル, 世, 世代, 中, 人, 今, 今後, 他, 何, 先, 再生, 処理, 前半, 場合, 少し, 当たり前, 後半, 心, 技術, 時, 普及, 晴れ, 東京, 歳, 殆ど, 気, 気分, 登場, 節目, 脳, 自分, 自動, 興味, 記憶力, 車, 通勤, 運転, 関心, 雨, 電車, 頃, 高知,
ウルフルズの人生のバカヤローが良い。
2017.10.02
ウルフルズの人生のバカヤローが良い。歌詞も声も音楽も良い。
音楽っていうのは人に力を与えたりするからホントに良いと感じます!!
「夢なんかくそくらえ」っていう所や「明日なんか」っていう所、言葉が好きです。
いろいろあって今のウルフルズがあることが、何だかこの歌詞から垣間見ることが出来たように思えます。
人間味あふれる歌詞がやはり良いなと。
ちなみに自分が音楽や記事をシェアしているものの7割は結構意味があります、それはひとの役に立つかもしれないものだと思ったものを極力シェアしたりしています。そして好きなものもであること。
嫌いなものはシェアしません。拡散なんかもあまりしたことが無いはずです。
どうも嫌いなものには関心があまりないです。
著者名 @taoka_toshiaki
※この記事は著者が30代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
5, 7, com, https, ifHE-GNkKY, watch, www, youtube, ウルフルズ, クソ, こと, シェア, それ, バカヤロー, パス, ひと, ホント, もの, 人, 人生, 人間味, 今, 力, 声, 夢, 嫌い, 役, 意味, 所, 拡散, 明日, 歌詞, 自分, 言葉, 記事, 関心, 音楽,
超それ!機械学習、 TensorFlow!!
2017.09.02
機械学習でどんな事出来るの?
勝手に勉強してくれるお利口さんな機械学習もあるけれど
オープンソースで提供している機械学習ってのは大体、前もって
答えを与えておいて、そこから判別するものがある。
今回、某検索サイトが提供しているTensorFlowでどんな事が出来るのだろうと
思い、ネットサーフィンしていたら、面白い記事を見つけました。
なんと、Raspberry PiとTensorflowをつかってきゅうりの仕分けができるというシステムを
開発した人がいました。この記事を読んでまさに「超それ!」
https://cloudplatform-jp.googleblog.com/2016/08/tensorflow_5.html
自分が思い描いていた機械学習でできることだと!
いやホントに凄いな、機械学習っていうのは
これからの花形になっていく存在だとつくづく思ってしまいました。
これか先、AIを作る層、AIライブラリやAI、APIを使う層、そしてAIを使う層に
別れていくだろうと思います。じぶんみたいな凡人開発者はAIを作る層には入れないですが、
AIライブラリやAI、APIなどを活用できるようにしないと、
今後、この業界で生き残っていくのは難しいじゃないかなと思っています。
なぜ、そう痛感しているのかと言えば
機械学習で検索すると数年前まではあまりヒットしなかったのに
去年あたりからな。いろいろな人が技術をオープンで公開し始めています。
この動きは止まることはないのではないかと思うのが一番の理由です。
ちなみに自分はあるサーバでTensorflowをインストールして動かしています。
まだ、テストを動かして遊んでいるぐらいで、じぶんでゴニョゴニョ開発しているわけではないです。
開発する前にやらないといけない事があるので、そちらが終わってから
Tensorflowコードをパクりながら学習しようかなと考えています。
https://www.youtube.com/watch?v=4HCE1P-m1l8
ちなみにtensorflowの公開をしますとか、言っていてからもう一年ぐらい
経過しているのかもしれません。すみません、じぶんは阿呆なので
もう少し理解するまでお時間が必要です。噛み砕いて提供できるまでには
結構、時間が必要かもしれません。
じぶんを機械学習したいこの頃でした・・・(´・ω・`)。
著者名 @taoka_toshiaki
※この記事は著者が30代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
08, 2016, 5, AI, API, cloudplatform-jp, com, googleblog, html, https, Pi, Raspberry, tensorflow, オープン, お利口, きゅうり, けが, こと, これ, サーフィン, サイト, システム, ソース, そこ, それ, ネット, ホント, もの, ライブラリ, 事, 人, 今回, 仕分, 先, 判別, 勉強, 勝手, 大体, 存在, 学習, 層, 提供, 検索, 機械, 答え, 自分, 花形, 記事, 開発,
非公式土佐電つぶやきBOTが完成したが速攻ロックされた件。
2017.07.31
非公式土佐電つぶやきBOTが完成したが速攻ロックされた件だけど
正直な所、少し予想はしていました。
世の中、よく思わない人々がいることは確かなことです。
今回の非公式土佐電つぶやきBOTの制作経緯ですけど・・・
作ろうと構想をねってから5年ほど月日が流れていたモノなんですね。
何故、ここまで時間がかかったかというと土佐電交通の時刻表が簡単に
プログラムで抽出することが不可能なんです。
なので・・・。
当初は人力でデータを入れ込もうと考えていました。
これが一番、長引く原因になったわけです、データを登録しようと
何度も頑張ってみたのですが、情報量が多いので途中で挫折すること何度か。
結局これでは埒が明かないので、
他の方法を考えた結果、WEBストライピングするという事です。
要はサイトのデータ抽出することで解決したのですが、
公式ページはあんな感じなので、よくある電車検索サイトから
データ抽出してきました。
路面電車の時刻表を検索できるサイトを
探すのに手間がかかりましたが、抽出事態は、一日ぐらいで
コーディングする事で何とかなりました。
ちなみにある大手の検索できるサイトからデータを抽出しています。
今回、作って思ったことは
公式ページがPDFじゃなく電車の時刻表が検索でき時刻表が表示されるサイトを作ったら
良いのにと思いました。バスアプリは作っているのに・・・。
https://twitter.com/tosaden_net
{非公式}土佐電時刻表検索を始めました。
https://tosaden.net/
著者名 @taoka_toshiaki
※この記事は著者が30代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
5, BOT, web, ここ, こと, これ, サイト, ストライピング, データ, プログラム, ページ, もの, ロック, わけ, 不可能, 世, 中, 予想, 事, 交通, 人々, 人力, 今回, 他, 件, 何度, 何度か, 何故, 公式, 制作, 原因, 土佐, 埒, 完成, 少し, 当初, 情報, 感じ, 所, 抽出, 挫折, 方法, 時刻表, 時間, 月日, 検索, 構想, 正直, 登録, 簡単, 経緯, 結果, 要, 解決, 途中, 速攻, 電, 電車,
素数判定、単純なソース。
2017.06.25
素数判定、単純なソースを作りましたので
公開します、ちなみに確率的素数判定法ではなく
ほんとに単純明快な方法で作成しましたので自分のパソコンでは
4桁までの処理が限界でした、基本:javascriptで動いています・
ローカルのパソコン性能に左右されます。
ソースを変更して5桁とか試してみるのも良いかもしれません?
サンプルサイト
https://zip358.com/tool/sosu/
function sosu(){
let sosuno = [2];
for(let i=3;i<=9999;i++){
let flg = true;
if(i%2===0){
continue;
}
for(let ii=2;ii<i;ii++){
if(ii%2===0){
continue;
}
if(i%ii===0){
flg = false;
break;
}
}
if(flg){
sosuno.push(i);
}
}
document.getElementById("my-textarea").value = sosuno.join(',');
}
document.getElementById("btn").addEventListener("click",sosu);
著者名 @taoka_toshiaki
※この記事は著者が30代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
$flg, 0, 2, 3, 4, 5, 9999, continue, For, function, if, Ii, javascript, let, lt, sosu, sosuno, true, サイト, サンプル, ソース, パソコン, ほんと, ローカル, 作成, 公開, 処理, 判定, 判定法, 単純, 基本, 変更, 左右, 性能, 方法, 明快, 素数, 自分, 限界,