@Blog
日常日誌からプログラムやYOUTUBER紹介、旅日記まで日々更新中です。

意識するまえに脳が信号を送る。
2020.11.30
いま、NHKで放送されているヒューマニストという番組が放送されているのだけど、いまいち盛り上がりにかけますね。でも内容は良い、例えば意識する前に脳活動が行われているのか、それとも自己が考えて行動するのかという問いは、昔から研究されていたのだけど、近年、どうも脳活動が先というのが答えらしいと分かったみたいだ。厳密言えば人は両方の事が起きているのだとか。じゃなぜ、脳活動が発生するのかなどはいまの所、不明みたいです。
ここからは妄想でのお話、実はひとも半操り人形なのかもしれないな・・・というおいら説、誰に操られているかは想像におまかせします。ひともゴキブリをラジコンのように操ったりしてましたからね。ひとも電気信号で操縦されていたとしても、文句は言えないな。
でも、もし本当に操られていたら、恐いな・・・。
そんな妄想は良いとして、Notionというアプリが良いらしい。来年には日本語対応のバージョンになるのだとか、Notionというアプリは仕事の効率化ツールです、スケジュール管理からTodoなんかいろいろな機能がひとつに纏まったツールで海外では流行っているだって。じぶんはこういう効率化ツールのが未だに面倒くさいなと感じます。まずTodoリストに登録するより記憶すればそのタスクが終わるまで覚えているタイプなので、何故、こういうタスクが必要なのか、わからない。付箋かメモで良いじゃんと昔から思っていたけど、他の人に共有すると見える化されて便利なんだなと感じました。
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
NHK, Notion, アプリ, いま, いまいち, おいら, おまかせ, お話, ゴキブリ, ここ, バージョン, ひと, ヒューマニスト, まえ, ラジコン, 不明, 両方, 事, 人, 仕事, 信号, 先, 内容, 前, 効, 妄想, 対応, 想像, 意識, 所, 操り人形, 操縦, 放送, 文句, 日本語, 昔, 本当, 来年, 活動, 番組, 発生, 研究, 脳, 自己, 行動, 誰, 近年, 電気,

英語ができない人が思う英語の大切さ。プログラミング編。
2020.11.16
自分は英語ができない人の中に入る、まじで英語がわからないのでプログラミングでエラーにぶち当たると対応できないと思われるかもしれませんが、プログラミング歴が長いので何となく書いていることがようになってきている。訳せるわけではないが、何かわかるだよな、英語の記事もなんか書いていることがわかるレベル、たまに翻訳アプリに頼ることもあるけれど、何となく冷静に見るとわかるレベルになりました。
英語がわからないとプログラミングの上達できないかと言えば違うけれど、確かに彼の言っている通り上達には関係する。なのでやはり英語がわからなければ英単語を覚えることから始めると良いかもしれない。あと、英語に限らずだけど学ぶことを辞めたら、IT業界ではやっていけれないぞ!っと思います。日進月歩に技術が次々とでてくるのに勉強していなかったら、結構大変です。
あと、概念が理解できない人や部品から組み立る創造性も必要になります、そこら辺はセンスの問題かもしれない。
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
IT, あと, アプリ, エラー, こと, センス, そこら辺, たま, プログラミング, まし, よう, レベル, わけ, 上達, 中, 人, 冷静, 創造性, 勉強, 大切, 大変, 対応, 彼, 必要, 技術, 日進月歩, 業界, 概念, 歴, 理解, 組み立, 翻訳, 自分, 英単語, 英語, 記事, 通り, 部品, 関係,

大衆理容へ行ってきました。
2020.11.04
大衆理容へ行ってきました。はじめて低料金の床屋?さんに行ってきたのですが、あっと言う間に髪の毛切られました。雑な扱いなんですけどね、3000円以上支払ってたのと最終的には出来上がりはあまり変わりない気がする。特に超絶にオシャレな髪型でもないので、出来上がりは変わらなかった。確かに髪切ったあとは雑かなと思っていたけど・・・。
家に帰って髪洗って乾かしたら、それほど違和感がなかったというのが衝撃的でした。天然パーマということも助かってか・・・もしれないけれど、見た目は変わらないなと印象を持ちました。でもまぁ…が付きますがね(下記参照)。
大衆理容の求めてはいけないものはコミュニケーションです、ほぼ機械的に散髪をするので会話は必要最低限です、全体を通して雑な対応なのだけど1300円にそういうの求めてはいけないかと思いました。
それに特に男前でもないので、大衆理容でも良いかなと思ったけど、、、やっぱ今まで行きつけの床屋?さんには勝てないなと思いました。
こういう人は大衆理容の方が断然良いと思います、コミュニケーションを求めない、接客サービスを求めない、スポーツ刈りや坊主にしたい方は断然、大衆理容さんの方がお得です。また、髪型の仕上がりはどうでも良い、多少ちぐはぐでも良いひとなども大衆理容さんの方がお得です。
こういう人は行かないほうが良い、オシャレな髪型を目指している人、店員さんの接客サービスも求める方、望まない髪型になって後悔する方などは大衆理容を利用しない方が無難です。
以上、現場からでした。
やっぱリアルな体験が大事だなと?。
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
1300, 3000, あと, こと, コミュニケーション, それ, パーマ, もの, 下記, 会話, 全体, 印象, 参照, 大衆, 天然, 家, 対応, 床屋, 必要, 散髪, 料金, 最低限, 機械的, 気, 理容, 男前, 見た目, 超絶, 違和感, 雑, 髪, 髪の毛, 髪型, 髪洗,

WordPressの公式ウィジェットカレンダー末日がズレている?ので直した。
2020.11.02
WordPressの公式ウィジェットカレンダー末日がズレている?ので直した。直した箇所はこちら変数名に$ooooと書いている部分が今回修正した箇所です。修正したファイルはWordPressのインクルードフォルダにある。ジェネラルテンプレートぴーえぃちーぴー(general-template.php)
wp-includes\general-template.php
このファイルを直しました。コアファイルなので次期UPDATEで修正されるかとは思いますが、それまではこちらの修正でなんとかなるさ?!
因みに何故、$ooooにしたのかは、お???の???という土佐弁からです。ファイルの中にget_calendar(げっとカレンダー)という関数があるのでそちらを修正しています。原因は下記です。
gmdateというものを使用している所をローカルサーバーの時間で対応しました、さくらレンタルサーバーのタイムゾーンは日本時間を指しています。若干の誤差はあるけれど酷い誤差ではないのでdateで大丈夫そうです。
要は日付の末日が正確に取れていないことが原因みたいです?
はやく修正してくれることを願っています。
function get_calendar( $initial = true, $echo = true ) {
global $wpdb, $m, $monthnum, $year, $wp_locale, $posts;
$key = md5( $m . $monthnum . $year );
$cache = wp_cache_get( 'get_calendar', 'calendar' );
if ( $cache && is_array( $cache ) && isset( $cache[ $key ] ) ) {
/** This filter is documented in wp-includes/general-template.php */
$output = apply_filters( 'get_calendar', $cache[ $key ] );
if ( $echo ) {
echo $output;
return;
}
return $output;
}
if ( ! is_array( $cache ) ) {
$cache = array();
}
// Quick check. If we have no posts at all, abort!
if ( ! $posts ) {
$gotsome = $wpdb->get_var( "SELECT 1 as test FROM $wpdb->posts WHERE post_type = 'post' AND post_status = 'publish' LIMIT 1" );
if ( ! $gotsome ) {
$cache[ $key ] = '';
wp_cache_set( 'get_calendar', $cache, 'calendar' );
return;
}
}
if ( isset( $_GET['w'] ) ) {
$w = (int) $_GET['w'];
}
// week_begins = 0 stands for Sunday.
$week_begins = (int) get_option( 'start_of_week' );
// Let's figure out when we are.
if ( ! empty( $monthnum ) && ! empty( $year ) ) {
$thismonth = zeroise( intval( $monthnum ), 2 );
$thisyear = (int) $year;
} elseif ( ! empty( $w ) ) {
// We need to get the month from MySQL.
$thisyear = (int) substr( $m, 0, 4 );
// It seems MySQL's weeks disagree with PHP's.
$d = ( ( $w - 1 ) * 7 ) + 6;
$thismonth = $wpdb->get_var( "SELECT DATE_FORMAT((DATE_ADD('{$thisyear}0101', INTERVAL $d DAY) ), '%m')" );
} elseif ( ! empty( $m ) ) {
$thisyear = (int) substr( $m, 0, 4 );
if ( strlen( $m ) < 6 ) {
$thismonth = '01';
} else {
$thismonth = zeroise( (int) substr( $m, 4, 2 ), 2 );
}
} else {
$thisyear = current_time( 'Y' );
$thismonth = current_time( 'm' );
}
$unixmonth = mktime( 0, 0, 0, $thismonth, 1, $thisyear );
$last_day = gmdate( 't', $unixmonth );
$oooothisyear = date( 'Y', $unixmonth );
$oooolast_day = date( 't', $unixmonth );
$oooothismonth = date( 'm' , $unixmonth);
// Get the next and previous month and year with at least one post.
$previous = $wpdb->get_row(
"SELECT MONTH(post_date) AS month, YEAR(post_date) AS year
FROM $wpdb->posts
WHERE post_date < '$thisyear-$thismonth-01'
AND post_type = 'post' AND post_status = 'publish'
ORDER BY post_date DESC
LIMIT 1"
);
$next = $wpdb->get_row(
"SELECT MONTH(post_date) AS month, YEAR(post_date) AS year
FROM $wpdb->posts
WHERE post_date > '$oooothisyear-$oooothismonth-{$oooolast_day} 23:59:59'
AND post_type = 'post' AND post_status = 'publish'
ORDER BY post_date ASC
LIMIT 1"
);
/* translators: Calendar caption: 1: Month name, 2: 4-digit year. */
$calendar_caption = _x( '%1$s %2$s', 'calendar caption' );
$calendar_output = '<table id="wp-calendar" class="wp-calendar-table">
<caption>' . sprintf(
$calendar_caption,
$wp_locale->get_month( $thismonth ),
gmdate( 'Y', $unixmonth )
) . '</caption>
<thead>
<tr>';
$myweek = array();
for ( $wdcount = 0; $wdcount <= 6; $wdcount++ ) {
$myweek[] = $wp_locale->get_weekday( ( $wdcount + $week_begins ) % 7 );
}
foreach ( $myweek as $wd ) {
$day_name = $initial ? $wp_locale->get_weekday_initial( $wd ) : $wp_locale->get_weekday_abbrev( $wd );
$wd = esc_attr( $wd );
$calendar_output .= "\n\t\t<th scope=\"col\" title=\"$wd\">$day_name</th>";
}
$calendar_output .= '
</tr>
</thead>
<tbody>
<tr>';
$daywithpost = array();
// Get days with posts.
$dayswithposts = $wpdb->get_results(
"SELECT DISTINCT DAYOFMONTH(post_date)
FROM $wpdb->posts WHERE post_date >= '{$thisyear}-{$thismonth}-01 00:00:00'
AND post_type = 'post' AND post_status = 'publish'
AND post_date <= '{$oooothisyear}-{$oooothismonth}-{$oooolast_day} 23:59:59'",
ARRAY_N
);
if ( $dayswithposts ) {
foreach ( (array) $dayswithposts as $daywith ) {
$daywithpost[] = (int) $daywith[0];
}
}
// See how much we should pad in the beginning.
$pad = calendar_week_mod( gmdate( 'w', $unixmonth ) - $week_begins );
if ( 0 != $pad ) {
$calendar_output .= "\n\t\t" . '<td colspan="' . esc_attr( $pad ) . '" class="pad">?</td>';
}
$newrow = false;
$daysinmonth = (int) gmdate( 't', $unixmonth );
$oooodaysinmonth = (int) date( 't', $unixmonth );
for ( $day = 1; $day <= $oooodaysinmonth; ++$day ) {
if ( isset( $newrow ) && $newrow ) {
$calendar_output .= "\n\t</tr>\n\t<tr>\n\t\t";
}
$newrow = false;
if ( current_time( 'j' ) == $day &&
current_time( 'm' ) == $thismonth &&
current_time( 'Y' ) == $thisyear ) {
$calendar_output .= '<td id="today">';
} else {
$calendar_output .= '<td>';
}
if ( in_array( $day, $daywithpost, true ) ) {
// Any posts today?
$date_format = gmdate( _x( 'F j, Y', 'daily archives date format' ), strtotime( "{$thisyear}-{$thismonth}-{$day}" ) );
/* translators: Post calendar label. %s: Date. */
$label = sprintf( __( 'Posts published on %s' ), $date_format );
$calendar_output .= sprintf(
'<a href="%s" aria-label="%s">%s</a>',
get_day_link( $thisyear, $thismonth, $day ),
esc_attr( $label ),
$day
);
} else {
$calendar_output .= $day;
}
$calendar_output .= '</td>';
if ( 6 == calendar_week_mod( gmdate( 'w', mktime( 0, 0, 0, $thismonth, $day, $thisyear ) ) - $week_begins ) ) {
$newrow = true;
}
}
$pad = 7 - calendar_week_mod( gmdate( 'w', mktime( 0, 0, 0, $thismonth, $day, $thisyear ) ) - $week_begins );
if ( 0 != $pad && 7 != $pad ) {
$calendar_output .= "\n\t\t" . '<td class="pad" colspan="' . esc_attr( $pad ) . '">?</td>';
}
$calendar_output .= "\n\t</tr>\n\t</tbody>";
$calendar_output .= "\n\t</table>";
$calendar_output .= '<nav aria-label="' . __( 'Previous and next months' ) . '" class="wp-calendar-nav">';
if ( $previous ) {
$calendar_output .= "\n\t\t" . '<span class="wp-calendar-nav-prev"><a href="' . get_month_link( $previous->year, $previous->month ) . '">? ' .
$wp_locale->get_month_abbrev( $wp_locale->get_month( $previous->month ) ) .
'</a></span>';
} else {
$calendar_output .= "\n\t\t" . '<span class="wp-calendar-nav-prev">?</span>';
}
$calendar_output .= "\n\t\t" . '<span class="pad">?</span>';
if ( $next ) {
$calendar_output .= "\n\t\t" . '<span class="wp-calendar-nav-next"><a href="' . get_month_link( $next->year, $next->month ) . '">' .
$wp_locale->get_month_abbrev( $wp_locale->get_month( $next->month ) ) .
' ?</a></span>';
} else {
$calendar_output .= "\n\t\t" . '<span class="wp-calendar-nav-next">?</span>';
}
$calendar_output .= '
</nav>';
$cache[ $key ] = $calendar_output;
wp_cache_set( 'get_calendar', $cache, 'calendar' );
if ( $echo ) {
/**
* Filters the HTML calendar output.
*
* @since 3.0.0
*
* @param string $calendar_output HTML output of the calendar.
*/
echo apply_filters( 'get_calendar', $calendar_output );
return;
}
/** This filter is documented in wp-includes/general-template.php */
return apply_filters( 'get_calendar', $calendar_output );
}
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
calendar, general-template, GET, gmdate, oooo, php, UPDATE, WordPress, wp-includes, インクルード, ウィジェット, カレンダー, コア, こちら, サーバー, さくら, ジェネラル, ズレ, そちら, それまで, タイム, テンプレート, ファイル, フォルダ, もの, レンタル, ローカル, 下記, 中, 今回, 使用, 修正, 公式, 原因, 土佐弁, 変数, 対応, 所, 時間, 末日, 次期, 箇所, 部分, 関数,
ipadをさぶでぃすぷれいに変えるやつとか出来ないし。
2020.10.17
うちのMacはCatalinaには対応しているものの、サブディスプレイ表示には対応していない機種です。それぐらい古いMacなのです。この古いMacにもSidecarPatcherというパッチを当ててあげれば出来るらしいが怖くて出来ない。どうもMacの心臓部(コアファイル)を編集するらしくて、もし間違えてこれてしまったらヤダから自分入れないままにしときます。
因みにSidecarPatcherを簡単に入れるアプリ、free Sidecarという物も存在していますが、自分はいれません。
やり方を動画で解説しているひとがいますので、興味が在る方はご視聴くださいませ。
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
8, amp, Catalina, com, free, https, IDaXb, iPad, Mac, Sidecar, SidecarPatcher, tFw, watch, www, youtube, アプリ, うち, コア, サブ, それ, ディスプレイ, バッチ, ひと, ファイル, プレイ, まま, やつ, やり方, 動画, 存在, 対応, 心臓, 方, 機種, 物, 簡単, 編集, 自分, 興味, 表示, 視聴, 解説,
iPhone12買いますか?
2020.10.16
https://www.apple.com/jp/iphone-12/ iPhone12を買いますか?自分は収入が不安定なのでいまは買うことはないでしょう。でも、魅力的なのは確か…。だけど5G対応したはじめてのiPhoneだから、もしお金があっても自分はスルーするつもり。
いまそんな事より仕事を見つけることが優先順位高いです。そして仕事探しの他にアプリを作ることを勉強中です。あとjavaを学習中です。この2つのことで気づきはjavaは大事だわ。java学習していると他の言語で応用がかなり楽になるということが身を持って気づきました。
あとios系アプリ作るのにswift(スウィフト)という言語も触っているのですが、言語はPythonとJavaの掛け合わせみたいな書き方だなと感じています。因みにios系のアプリを作るにはMacが必要です。そして開発環境はxcodeです。xcodeを触っていて・・・outlet(アウトレット)という考え方があるのですが、これが最初なれないなと感じました。今でもめんどくさいなと思っています。
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
12, 2, 5, apple, com, https, iOS, iPhone, java, jp, Mac, outlet, Python, swift, www, xcode, アウトレット, あと, アプリ, いま, お金, かなり, こと, スウィフト, スルー, つもり, ハジメテ, 不安定, 事, 仕事, 他, 優先, 勉強, 収入, 大事, 学習, 対応, 必要, 応用, 書き方, 環境, 系, 自分, 言語, 身, 開発, 順位,
ios14のウィジェットをカスタマイズする方法。
2020.09.25
ios14のウィジェットをカスタマイズする方法を紹介している動画を2つ紹介します。どちらもウィジェットスミス(Widgetsmith)というiosアプリを使用してカスタマイズしています。下記の動画を見ていただければわかるかと思いますが、日本語対応していないので若干、面倒かなと思うかもしれませんが慣れれば簡単です。
その他にも、colorwidgetsというアプリもあるそうですね。そのうち、日本語対応のウィジェットアプリがリリースされるとは思いますが、今の処、日本語対応のゴリゴリカスタマイズできるウィジェットアプリはリリースされていないようです。
あと自分としてはPaypayの純正のウィジェットが便利だなと思っています。人目で残高確認ができますし、支払いのショートカットとしても優秀かなと思っています。ただ、いま例の問題(不正引き落とし問題・2020/09/25:現在)でチャージが地銀などから出来ない状態が続いているので支払いは控えてます。
〆ios14のウィジェットカスタマイズの方法(手順解説)でした。
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
09, 14, 2, 2020, 25, colorwidgets, iOS, Paypay, Widgetsmith, アプリ, いま, ウィジェット, うち, カスタマイズ, ショートカット, スミス, その他, チャージ, どちら, リリース, 下記, 不正, 人目, 今, 使用, 便利, 優秀, 処, 動画, 問題, 地銀, 対応, 方法, 日本語, 残高, 現在, 確認, 簡単, 純正, 紹介, 自分, 若干, 面倒,
ショッピファイ(Shopify)という黒船。
2020.09.16
ECサイトを運営されている方は知っている方もいるかと思いますが、誰でもかんたんにグローバルなECサイトが作れるショッピファイ(Shopify)が話題です。この頃?、日本語にも対応したみたいです、ただしAPIのドキュメントは日本語にはまだ対応していませんが、翻訳を介せばそれほどわからないこともないかもしれません。
ショッピファイって何なんをもっと噛み砕くと、日本のBASE(ベイス)やGMOのカラーミーショップなどのインターネット上で個人や企業がお店が開けるものだと思っていただけたら良いかなと思います。ショッピファイの優秀なところは世界へ展開出来るということです。
BASEなどにある決済機能なども搭載されていますし、CSVの流し込みにも対応しています、なのでこれからECサイトを運営される方は自社のECサイトとしてBASEとショッピファイを運営し、楽天モールやYahoo!ショッピングなどの運営することにより、後発でも利益を得ることは十分可能かと思います。
尚、いま楽天モールなどを使わずにBASEやショッピファイまたはECCUBEなどを使用し自社のECサイトを運営することが流行っているそうです。
ショッピファイで世界へ展開したいという方は、まず下記のショッピファイのブログを読んでみてはどうでしょうか、ショッピファイの構築手順が動画とテキストで解説しています。
https://www.shopify.jp/blog/start-onlinestore
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
16, 8, amp, API, base, com, CSV, EC, GMO, https, jPkKF, Shopify, watch, www, Xx, youtube, インターネット, お店, カラーミーショップ, かんたん, グローバル, こと, これ, サイト, ショッピファイ, ドキュメント, ところ, ベイス, もの, 世界, 企業, 何, 個人, 優秀, 対応, 展開, 搭載, 方, 日本, 日本語, 機能, 決済, 翻訳, 自社, 話題, 誰, 運営, 頃, 黒船,
全米がハナで笑ったイチゼロシステムのリアルタイムレーシングの解説が分かりやすい。
2020.08.27
全米がハナで笑ったイチゼロシステムのリアルタイムレイトレーシングの解説が分かりやすいです、分かりやすいけれどそれなり情報処理やPCのことを理解している人にとってはという事が前提条件としてつきます。
これを聞いた限りではPS5は買いだなと思っています。そしてUnreal Engine(アンリアルエンジン)を触っておいて損はなさそうです。じぶんも何か作りたいなと言う気分に動画を見ていて思っています。
ちなみに動画の解説にもありますが、アンリアルエンジンは誰でも無料で制作できる、そしてリアルタイムレイトレーシング対応のビデオボードだったら、そちらの再現も可能みたいですね。そしてもうひとつ、SSDのことにも触れていた転送速度の爆速のSSDの話ですが、M.2 SSDですが新しいマザーボードでは対応しているものもあると思います。ちなみに自分のマザーボードにはついてました。
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
2, 5, Engine, PC, PS, SSD, Unreal, アン, いち, エンジン, こと, これ, システム, じぶん, ゼロ, そちら, それなり, ハナ, ビデオ, ボード, マザーボード, もうひとつ, もの, リアル, リアルタイム, レーシング, レイトレーシング, 事, 人, 全米, 再現, 制作, 前提, 動画, 可能, 対応, 情報処理, 損, 条件, 気分, 無料, 爆速, 理解, 自分, 解説, 話, 誰, 買い, 転送, 速度, 限り,
座る立つを繰り返して。
2020.08.13
座る立つを繰り返していたのですが、この頃お腰の痛みがなくなりかけつつあります。最近までお腰が痛くて長時間椅子に座ることが出来なかったのですが、痛みを感じたら立ち上がり部屋の中をウロウロしてまた座るということを繰り返していたら、痛みが、かなりなくなりました。
こうなるまでに3ヶ月ぐらい時間が経過しているのですが、それでも治ったというのはデスクワークする人には朗報の話かなと思ったので記事として書きました。
椅子に一日中座って作業するというのは傍から見れば楽な仕事だと思われがちかと思いますが、案外そうでもないですね。頭も使いつつ、お腰や肩にかなり負担がかかります。あと電話がある会社はますます面倒でその対応をしつつ実務も行わなければならず結構大変なんです。
その中でも一番、痛めたら致命傷になるのが、お腰です。お腰を痛めると業務にかなりの確率で支障をきたすことになります。なのでなんか痛いなお腰と思ったら絶対軽い運動を行うことを強くお勧めします。お腰を痛めると本当に大変ですからね。
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
3, お勧め, かなり, こと, それ, デスク, ワーク, 中, 人, 仕事, 会社, 作業, 傍, 大変, 実務, 対応, 支障, 時間, 最近, 朗報, 椅子, 業務, 確率, 経過, 肩, 腰, 致命傷, 記事, 話, 負担, 運動, 長時間, 電話, 面倒, 頃, 頭,
あのカウンター数、嘘だよね。
2020.07.26
訪問者A『あのカウンター数は嘘だよね。』
おいら『えっ』
おいら『あぁ荒らしがカウンター数あげてんだけど、ほっといてんの』
訪問者A『それって』
おいら『いいの、別にSEOに影響出てないから』
訪問者A『それって・・・嘘便乗だよ』
おいら『そう便乗だよ』
トイウコトで、あのカウンターは目安にも出来ない日もありそうでもない日もあるそんなアクセスカウンターになっております。
アクセスカウンターの対応することも可能なのですが、めんどくさいのでほっていています。アクセスカウンター数が多いほど、初回訪問者は良い印象を与えるみたいなので・・・。
自分が悪いと印象はありません、真実のアクセスを知りたければアクセスの荒らしを辞めれば良いだけですからね。因みに今年、嵐が解散するでしたっけ?全然関係ない話でごめんなさい。
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
SEO, アクセス, アクセスカウンター, おいら, カウンター, こと, それ, トイウコト, 今年, 便乗, 初回, 印象, 可能, 嘘, 対応, 嵐, 影響, 日, 目安, 真実, 自分, 解散, 訪問者, 話,
面接という謎。
2020.07.19
面接で自分をよく見せず、もうありのままで返答しています。堅苦しい喋りは自分にはあいません。それでも受け入れてくれる会社で頑張っていこうと思っています。皆、なんだか大人対応していて集団面接とかいくと凄いなぁと思います。どんだけ、殻をかぶって生きているのだろうかと。
こんなので、大体の企業さんから技術はあるけど、総合的に判断すると駄目みたいな返答をいただきますが、総合的に良い人材なんていないじゃないかと思っています。なので大体は貴方と相性が合わないと要約しています。
1時間以上、面接すればそのひとの事が見えてくると思うのですが、そうでもない限り表面上すら見ることは出来そうにないし、実際に働かさないとその人の本質的なものは見えてこないと思います。
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
1, ありのまま, こと, そのひと, それ, もの, 事, 人, 人材, 企業, 会社, 判断, 大人, 大体, 実際, 対応, 技術, 殻, 皆, 相性, 自分, 表面, 要約, 謎, 貴方, 返答, 限り, 集団, 面接, 駄目,

bingから画像を一括ダウンロードするアプリ。
2020.06.14
任意のキーワード検索でbing画像からを一括ダウンロードするアプリを作りました。img-dl-bing-sss.exeファイルを起動すると動画のようなコンソール画面が開くので入力してダウンロードを開始してください。ダウンロードが終わると勝手に閉じます。
なお、一応R指定にも対応しています、キーワードがR指定項目かもと思う場合、Yと入力ください。
新垣結衣さんの熱烈なファンでもないですが、綺麗な方だとは思います。ということで例として使用させて頂きました、、、関係者の皆様ごめんなさい。
このアプリはウィンドウズ10環境で動作します。また、動作しないブロックされる場合は下記のURL等を参照しブロックを解除しお使いください。ブロック解除方法:https://forest.watch.impress.co.jp/docs/news/1130655.html
※なお、Bingサイトのデザインが変わった場合、動作しなくなりますのであしからず。
画像ダウンロードアプリのソースコードはこちら(古いコードですので動かない場合がありますVS2019C#)
using System;
using System.Runtime.CompilerServices;
namespace img_dl_bing_sss
{
class Program
{
static void Main(string[] args)
{
string keyword = "",R18="";
Console.ForegroundColor = ConsoleColor.Red;
Console.WriteLine("処理中は画面や立ち上がったブラウザを閉じないでください。\n" +
"処理が完了すると「***終了します***」と表示されます。\n" +
"何かキーを押し終了してください\n\n");
Console.ForegroundColor = ConsoleColor.Green;
Console.WriteLine("↓検索キーワードを入力しエンターを押してください");
keyword = Console.ReadLine();
Console.ForegroundColor = ConsoleColor.White;
Console.WriteLine("↓R指定ですか?\nY or N かの文字を入力しエンターを押してください");
R18 = Console.ReadLine();
Console.ForegroundColor = ConsoleColor.Yellow;
Console.WriteLine("***画像のダウンロード量(画像数ではありません) 1?999 ***");
var scroll = 9999;
try
{
scroll = int.Parse(Console.ReadLine());
if(scroll >=1 && scroll <= 999)
{
scroll = scroll * 9999;
}
}
catch
{
Console.ForegroundColor = ConsoleColor.Yellow;
Console.WriteLine("***検索キーワードが不適切です。***");
}
SuiteTests img = new SuiteTests();
if (img.Imgdlok(keyword, R18, scroll))
{
img.Dispose();
}
else {
Console.ForegroundColor = ConsoleColor.Yellow;
Console.WriteLine("***検索キーワードが不適切です。***");
}
Console.ForegroundColor = ConsoleColor.Yellow;
Console.WriteLine("***終了します***");
}
}
}
// Generated by Selenium IDE
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading;
using OpenQA.Selenium;
using OpenQA.Selenium.Chrome;
using OpenQA.Selenium.Firefox;
using OpenQA.Selenium.Remote;
using OpenQA.Selenium.Support.UI;
using OpenQA.Selenium.Interactions;
using Xunit;
using AngleSharp;
using AngleSharp.Html.Parser;
using AngleSharp.Html.Dom;
using AngleSharp.Dom;
using System.Runtime.InteropServices;
using Newtonsoft.Json;
using System.IO;
using System.Net;
public class SuiteTests : IDisposable {
public IWebDriver driver {get; private set;}
public IDictionary<String, Object> vars {get; private set;}
public IJavaScriptExecutor js {get; private set;}
public SuiteTests()
{
driver = new ChromeDriver();
js = (IJavaScriptExecutor)driver;
vars = new Dictionary<String, Object>();
}
public void Dispose()
{
driver.Quit();
}
public bool Imgdlok(string keyword="", string R18= "",int scroll = 999999)
{
if (keyword == "") return false;
Console.Clear();
string path = System.IO.Directory.GetCurrentDirectory() + "\\IMG\\";
if (!Directory.Exists(path))
{
Directory.CreateDirectory(path);
}
driver.Navigate().GoToUrl("https://www.bing.com/?scope=images&nr=1&FORM=NOFORM");
driver.Manage().Window.Size = new System.Drawing.Size(945, 1030);
driver.FindElement(By.Id("sb_form_q")).Click();
driver.FindElement(By.Id("sb_form_q")).SendKeys(keyword);
driver.FindElement(By.CssSelector(".search.icon.tooltip")).Click();
try
{
if (R18 == "Y")
{
driver.FindElement(By.LinkText("設定の変更")).Click();
driver.FindElement(By.CssSelector("#settings_safesearch div:nth-child(3)")).Click();
driver.FindElement(By.Id("adlt_set_off")).Click();
driver.FindElement(By.Id("sv_btn")).Click();
driver.FindElement(By.Id("adlt_confirm")).Click();
}
}
catch
{
Console.ForegroundColor = ConsoleColor.Yellow;
Console.WriteLine("***R指定ではありません***");
}
try
{
double ps = 0;
for (int i = 99; i < scroll;i+=1000)
{
js.ExecuteScript("window.scrollTo(0," + i + ")");
Console.CursorLeft = 0;
ps = (double)(((double)i / (double)scroll) * 100);
Console.Write("処理中::{0:D2}%",(int)ps);
}
}
catch
{
Console.ForegroundColor = ConsoleColor.Yellow;
Console.WriteLine("***Max画像まで到達しました***");
}
Console.ForegroundColor = ConsoleColor.White;
Console.WriteLine("\n***ダウンロード処理開始***\n");
int cnt = 0;
var elm = driver.FindElements(By.ClassName("iusc"));
driver.Manage().Window.Minimize();
foreach (var e in elm) {
dynamic jsondata = JsonConvert.DeserializeObject(e.GetAttribute("m"));
Console.ForegroundColor = ConsoleColor.Red;
Console.WriteLine((string)jsondata.murl + "::wait.....");
string imgurl = (string)jsondata.murl;
if(4 <= Path.GetExtension(imgurl).Length && Path.GetExtension(imgurl).Length <= 5)
{
try
{
cnt++;
string ext = Path.GetExtension(imgurl);
WebClient myWebClient = new WebClient();
myWebClient.DownloadFile(imgurl, path + "No-" + cnt + "-" + keyword + ext);
myWebClient.Dispose();
Console.ForegroundColor = ConsoleColor.Cyan;
Console.WriteLine("***" + cnt +"::" + imgurl + "\n::ダウンロード中、画面を閉じないでください...***");
Console.ForegroundColor = ConsoleColor.Green;
Console.WriteLine("***" + cnt + "::ダウンロード済***");
}
catch
{
Console.ForegroundColor = ConsoleColor.Yellow;
Console.WriteLine("***ダウンロードが失敗しました***");
}
}else{
Console.ForegroundColor = ConsoleColor.Yellow;
Console.WriteLine("***画像の拡張子が不明のためダウンロードが失敗しました***");
}
}
Console.ForegroundColor = ConsoleColor.Blue;
Console.WriteLine("***ダウンロード完了しました***\n" + path);
return true;
}
}
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
10, bing, exe, img-dl-bing-sss, url, VS, アプリ, ウィンドウズ, キーワード, コード, こちら, こと, コンソール, サイト, ソース, ダウンロード, デザイン, ファイル, ファン, ブロック, 一括, 下記, 任意, 使用, 例, 入力, 動作, 動画, 勝手, 参照, 場合, 対応, 指定, 新垣結衣, 方, 方法, 検索, 環境, 画像, 画面, 皆様, 等, 綺麗, 解除, 起動, 開始, 関係者, 項目,
JavaScriptのPromise例えが分からない人のために。
2020.06.06
自分は『Promiseってなんやねん、わからんわ。』という人でした。皆さん賢いので複雑怪奇なコードで教えてくれていて…わかんない。
Promiseって非同期処理にするための道具です。Promiseって書いてその中に非同期処理の内容を書いてあげる。値を戻したい場合は命名した名前のカッコの中に値を返してあげれば良いが!!、どうも渡せる値は一つだけなのだ。
ちなみにthen(その後)で、非同期処理が終わった後にする処理が書けるですね(´・ω・`)。thenの中に非同期処理の値も返ってくる‥但しひとまとめで、、そんだけの話。またエラーになった時の処理も対応できるってさ…、そしてチェーン(数珠繋ぎ)の様に書くことも可能です、ここではそれらは割愛しますね?。
ちなみに最初、asyncとawaitと混合していて悩んでおりました。asyncとawaitは対になっていると同じような感覚でPromiseとthenは対になっていると考えてください。あまり複雑怪奇に考えずサンプルコードを動かして出来るできないを判断した後に賢い人が書いたリファレンスなどを読むことをオススメします。
最後に単純なソースコードとコンソールの結果を載せときますね。
"use strict";
var a = 0;
const q1 = new Promise((zaru)=>{//zaru...名前付けは何でも良い(予約されているものでなければ
a++;
zaru(a + "1..");//データをまとめて返す
});
const q2 = new Promise((zaru)=>{
a++;
zaru(a + "2..");
});
const q3 = new Promise((zaru)=>{
zaru("3~~~~n");
});
const qdaaaaaaaa = new Promise((zaru)=>{
zaru([1,2,3,"Dahahaha!!"]);
});
Promise.all([q1,q2,q3,qdaaaaaaaa]).then((val)=>{
console.log(val);
}
);
qdaaaaaaaa.then((val)=>{
console.log(val);
});
Array(4) [1, 2, 3, "Dahahaha!!"]
move.js:26
length:4
__proto__:Array(0) [, …]
0:1
1:2
2:3
3:"Dahahaha!!"
Array(4) ["11..", "22..", "3~~~~n", Array(4)]
move.js:21
length:4
__proto__:Array(0) [, …]
0:"11.."
1:"22.."
2:"3~~~~n"
3:Array(4) [1, 2, 3, …]
length:4
__proto__:Array(0) [, …]
0:1
1:2
2:3
3:"Dahahaha!!"
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
async, await, javascript, Promise, then, エラー, かっこ, コード, ここ, こと, それら, そん, ため, チェーン, なん, ひとまとめ, 一つ, 中, 人, 但し, 値, 内容, 処理, 割愛, 可能, 同期, 名前, 命名, 場合, 対, 対応, 後, 感覚, 数珠繋ぎ, 時, 最初, 混合, 皆さん, 自分, 話, 道具,

ダラダラとLaravel構築してみた解説あり(*´?`*)
2020.06.02
Laravelをインストール手順を動画にしました。いらない手順が含まられていますが・・・。気にしないでください!!
ちなみに適当な動画は無音ですみません。尚、PHPがタイムアウトしてComposerがインストール出来ない場合はポートの解放が出来ているか、IPv6が有効になっていないかなど調べてくだいね。なお、自分の場合、IPv6が有効になっていてダウンロードが出来ない状態でした(´・ω・`)。
お世話になったサイトはこちらです。こちらの手順通り対応しvirtualBOX、いや仮想環境を再起動してあげてください。そうするとすんなりダウンロード出来ます。それでもダウンロード出来ない場合はアドレスからgetcomposer.orgからダウンロードする手段もありますが、恐らくその後のComposerインストールで躓くはずです。サーバー環境を見直すと良いでしょう。
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('sha384', 'composer-setup.php') === 'e0012edf3e80b6978849f5eff0d4b4e4c79ff1609dd1e613307e16318854d24ae64f26d17af3ef0bf7cfb710ca74755a') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
php composer-setup.php
php -r "unlink('composer-setup.php');"
composer create-project laravel/laravel example-app
最後にLaravelのドキュメントのリンクを貼っときますm
https://laravel.com/docs/8.x/installation
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
6, Composer, getcomposer, https, IPv, Laravel, org, php, server-me, virtualBOX, www, アドレス, いね, インストール, お世話, くだ, こちら, サーバー, サイト, タイムアウト, ダウンロード, パス, ポート, 仮想, 再起動, 動画, 場合, 対応, 後, 手段, 手順, 有効, 構築, 気, 無音, 状態, 環境, 自分, 解放, 解説, 適当,
pip3がうまく動かない(´・ω・`)v
2020.04.30
pipがうまく動かないときの対応。下記の3点が入っていないとpython3をインストールしたとしてもpipが動かないそうだ。これが分かるまでに2時間を費やした時間を返してください(´・ω・`)v
yum install -y openssl-devel
yum install -y libffi-devel
yum install -y zlib-devel
ちなみにPython3のインストールは下記のURLの説明を参考しました。ソースコードをビルドしインストールしている。こうすることでバージョンの使い分けができる。PHPは慣れたもので簡単に使い分けできるですけどね・・・。PythonはPythonは・・・。
最後にソースコードをビルドしてインストールしてpipを使用する場合、pip3で動かない場合はpip3.8とか試してみてくださいね。
コピペでWEBスクレイピングしてみた動画をUPしています。ちなみにpython 初心者vlogをアップして駄目駄目さ見せつけています。PHPはスイスイ?と出来るのですがPythonはズブの素人です。
徐々に上達するでしょう。
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
-y, 2, 3, 3.8, install, libffi-devel, openssl-devel, php, pip, Python, UP, url, v, web, yum, zlib-devel, インストール, コード, こと, コピペ, これ, してい, スク, ソース, とき, バージョン, ビルド, ピング, もの, レイ, 下記, 使用, 動画, 参考, 場合, 対応, 時間, 最後, 簡単, 説明,
新妻免疫塾 K&L Immunology Club
2020.04.18
免疫のことを優しく解説しているサイト、YOUTUBEというカテゴリーにしていますが、免疫のことを研究されている先生です。
いろいろな情報が飛び交う中、正しい知識を取り入れて正しく対応を取りましょう、そしてデマなどの情報に惑わされないようにしましょう。
尚、新妻 耕太先生のことを自分はニューズピックスで知りました。いまニューズピックスの番組(動画)や記事では新型コロナウィルスなどの特集を組んでいます。ニューズピックスはある一定の信頼性は有ると思いますが、全ての情報を鵜呑みにするのではなく、いろいろな信頼性の有る記事などを並行的に読み、判断することをオススメします。
この新型コロナウィルスのワクチンが出来るまでビル・ゲイツは18ヶ月はかかるだろうという発言されているそうです、なので2020年の5月や6月で新型コロナウィルスの感染率が下がったとしても全然気が抜けないのです。特効薬かワクチンが出来るまでは、この状態が続くものとして考えて置いたほうが良いという事、また長期戦になると思って日々暮らしていくべしなのかなと思っています。
2020年は大変な年になってしまいましたが、人ってのは慣れる生き物なので何とかなると自分は思っています、おそらく今年中に何らかの対応が出来るようになると自分は思っています。
最後にチャンネル登録はこちら
https://www.youtube.com/channel/UCLo1omKQawoV0-NbDbfsz0w
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
18, 2020, 5, 6, Club, Immunology, youtube, いま, いろいろ, ウィルス, おすすめ, カテゴリー, ゲイツ, こと, コロナ, サイト, デマ, ニュース, ピックス, ビル, ワクチン, 一定, 中, 信頼性, 先生, 免疫, 全て, 判断, 動画, 塾, 対応, 情報, 感染, 新型, 新妻, 気, 特効薬, 特集, 番組, 発言, 知識, 研究, 耕太, 自分, 解説, 記事, 鵜呑み,
経済減速とかで思うこと。
2020.04.02
経済減速とかで思うことは、早くもとの状態に戻って欲しい。東京オリンピックが延期になった途端、新型コロナの感染者数が跳ね上がりました。これが国のやることなのか?、新型コロナが終息すると対応の問題が浮き彫りになってくると思います。感染率や死者率などのお話は下記の動画を参照ください、わざわざこの人達が嘘を流しているようには自分は思えない。
確かにまだ治す薬もないので、怖いとは思いますが極端な自粛ムードは飲食業界などには多大な影響を及ぼしていると思います。そしてホリエモンが先日上げた動画が意味していることも事実かなと。
攻撃的な少数の行動するひとが世の中にはいます。そういう人が世の中を窮屈しています。そして最終的に馬鹿らしくなるのです。
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
-IyxT, 4, 8, com, https, jrsb, watch, www, youtube, オリンピック, お話, こと, これ, コロナ, ひと, ホリエモン, ムード, もと, 下記, 世, 中, 事実, 人, 先日, 動画, 参照, 問題, 嘘, 国, 多大, 対応, 少数, 延期, 影響, 意味, 感染, 感染者, 新型, 東京, 業界, 極端, 死者, 浮き彫り, 減速, 状態, 窮屈, 終息, 経済, 自分, 自粛, 薬, 行動, 途端, 飲食,
懐かしのゲーム桃太郎電鉄がSwitchから発売される。
2020.03.28
あの桃太郎電鉄がSwitchから発売されるだってさ。なんだかとても懐かしい気がします。自分が小学生や中学生時代に遊んだ記憶のあるものが、令和でも遊べるというのはとても良いなと思います。因みに自分は貧乏神に取り憑かれたらファミコンをリセットしていた覚えがあります。子供だった…、負けん気はあったのですがなかなか上手くできていて、お金持ちになると貧乏神が現れたりゴジラが現れたりして会社を潰すんですよね。
でも桃太郎電鉄を子供の時するのは悪くはないなと思います。桃太郎電鉄って人生ゲームと似ているけれど、もっと盛り上がるしなんたって楽しいですからね。みんなでガヤガヤしながらゲームプレイするのは、やっぱり良いですよね。
2020年に発売される桃太郎電鉄はオンライン対応だとのことです。プレイしてみたいのですが・・・Switchがない。プレイステーションに移植してほしい気がします。
https://www.konami.com/games/momotetsu/teiban/ 【桃太郎電鉄公式】
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
2020, https, ko, switch, www, オンライン, お金持ち, ゲーム, ゴジラ, こと, ファミコン, プレイ, プレイステーション, みんな, もの, リセット, 中学生, 人生, 令和, 会社, 子供, 対応, 小学生, 時, 時代, 桃太郎電鉄, 気, 発売, 移植, 自分, 記憶, 負けん気, 貧乏神,
ちょっとファンクな女性YOUTUBER
2020.03.05
ちょっとファンクな女性YOUTUBER岡奈なな子さん。YOUTUBERの中では中堅YOUTUBERに入るかと思いますので、認知されている方も多いかなと思います。岡奈なな子さんの日常を撮った短編映像です。こんな女性、結構身近にいるような気がします。特に高知県はこういう女性が多いような気がします(偏見)。
岡奈なな子さん、初期の動画ではタトゥーが無かったのにいつの間にかタトゥーが左腕にあります。勢いで入れたのかな、それとも何か心境の変化なのかなとか?不明ですね…。全部の動画を見ていないのでどこかでその事について語られているかもしません。日本ってまだまだタトゥーとかに関して理解が薄いような気がします。自分も頭ではわかっていても何だか昔の洗脳で柔軟に対応できない自分がいます。
日本でこういう事がファッション感覚になるまでは何か時間がかかりそうな気がしますね。岡奈なな子さんも何だか、左腕を隠されているような撮り方をしています?そう感じるだけ・・・?、別に悪いことをしているわけではないのだから隠さず撮影しても良いじゃないかなとか思うですけどね。まだ社会が追いついていないのかもしれませんね。
ちなみに岡奈なな子さん、平成生まれのわりには、何か昭和ぽっい感覚のある方だなと思います。BGMで流れる音楽も何か昭和のレトロさを感じます。そしてこの人は綺麗な顔立ちなのにあまり、そういうのを売りにしていない?感覚があり良いかなと思います。本人が売りにしていないと思えてもそう見えてしまうでしょうけどね(・(ェ)・)。
最後にチャンネル登録はこちらになります。
https://www.youtube.com/channel/UCt-1ijH9G4J6Uy6KzDMHwCw/about
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
YOUTUBER, タトゥー, どこか, なな子, ファッション, ファンク, 不明, 中, 中堅, 事, 偏見, 全部, 初期, 動画, 勢い, 変化, 奈, 女性, 対応, 岡, 左腕, 心境, 感覚, 方, 日常, 日本, 昔, 映像, 時間, 気, 洗脳, 理解, 短編, 自分, 認知, 身近, 頭, 高知県,

phpのPDOでバインドする時、こうすれば楽。
2020.02.28
phpのPDOでバインドする時、こうすれば楽ですよね(・(ェ)・)という記述です。前の職場ではsqliでDB接続していたのですが、バインドして作られていたかは忘れてしまいました。ちなみに前の職場のPDOに改修するのは面倒くさいだろうなと感じます。何がめんどくさいかと言えば、今まで導入していたもの全てに対応するというのは、超面倒くさいと思います。
余談:
前の職場を何故辞めたかのお話します。突発的に辞めたと思う人もいるかもしれませんが、基本的に突発的辞めることはないです。突発的に辞めたかのように見えて前々から考えてきっかけを理由に辞めました。具体的な理由に関してはここでは書きません。突発的に辞めたかのように見せかけて計画的です(・(ェ)・)
ソースコードは下記になります。
<?php
ini_set("display_errors",1);
class mysql {
static $dbh = Null;
static $host = "localhost";
static $id = "あいーでぃー";
static $pass= "パスワード";
static $dbname = "test";
static $sql = array(
"id"=>array("data"=>PDO::PARAM_INT,"val"=>""),
"name"=>array("data"=>PDO::PARAM_STR,"val"=>"")
);
static function connect()
{
/* 接続状況をチェックします */
try {
static::$dbh = new PDO('mysql:host='.static::$host.';dbname='.static::$dbname.';', static::$id, static::$pass);
static::$dbh->query('SET NAMES utf8');
} catch (Exception $e) {
echo "Failed: " . $e->getMessage();
}
}
static function insert_query(){
//プリペアドステートメント
$stmt = static::$dbh->prepare("insert into test1 (id,Name) values(:id,:name);");
//バインド
foreach(static::$sql as $key=>&$val){
$stmt->bindParam(":$key",$val["val"],$val["data"]);
}
$stmt->execute();
$stmt = null;
}
static function update_query(){
//プリペアドステートメント
$stmt = static::$dbh->prepare("update test1 set Name= :name where id = :id;");
//バインド
foreach(static::$sql as $key=>&$val){
$stmt->bindParam(":$key",$val["val"],$val["data"]);
}
$stmt->execute();
$stmt = null;
}
static function select_query(){
//プリペアドステートメント
$stmt = static::$dbh->prepare("select * from test1 where id = :id;");
//バインド
foreach(static::$sql as $key=>&$val){
if($key==="id")$stmt->bindParam(":$key",$val["val"],$val["data"]);
}
$stmt->execute();
while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
printf ("%d (%s)<br>", $row["id"], $row["Name"]);
}
$stmt = null;
}
static function close(){
static::$dbh = null;
}
}
mysql::connect();
// for($i = 0 ;$i<=99;$i++){
// mysql::$sql["id"]["val"] = $i;
// mysql::$sql["name"]["val"] = "テスト$i";
// mysql::insert_query();
// }
for($i = 0 ;$i<=99;$i++){
mysql::$sql["id"]["val"] = $i;
mysql::$sql["name"]["val"] = "テスト<font color='red'>$i</font>";
mysql::update_query();
}
for($i = 0 ;$i<=99;$i++){
mysql::$sql["id"]["val"] = $i;
mysql::select_query();
}
mysql::close();
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
1, class, db, dbh, display, errors, ini, lt, MYSQL, PDO, php, quot, set, sqli, static, お話, きっかけ, コード, ここ, こと, ソース, バインド, もの, 下記, 人, 何, 余談, 全て, 前, 前々, 対応, 導入, 接続, 改修, 時, 理由, 職場, 記述,
NTTのCOTOHA API(コトハAPI)でWordPressの自動タグ生成プラグインを作ってみた。
2020.02.20
GUIはこんな感じになります。
jp-auto-tagというプラグインをYahoo!APIを使用し作っていましたが
何だか、バージョンが変わるらしくてその対応するのが…。コトハAPIで同じ感じのものを作ってみました。
面倒くさいなぁと感じたので
尚、jp-auto-tagを使用している方はjp-auto-tagを停止してjp-auto-tag2をご使用ください。また圧縮ファイルを解凍しワードプレスのプラグインフォルダにフォルダごと、アップロードしプラグイン有効にしAPIの設定すると自動タグが生成可能です。
ブログ投稿時にタグが自動生成されますので、確認の際は画面を再読み込みしてご確認ください。
尚、オプションデータは残り続けますので悪しからず?
プラグインのソースコードはこんな感じになります。
<?php
/*
Plugin Name: jp-auto-tag2
Version: 0.1.10
Description: auto jp tag2
Author: taoka toshiaki
Author URI: https://zip358.com/
Plugin URI: https://zip358.com/plugin/jp-auto-tag2.zip
*/
class jp_auto_tag2
{
public $db_option = "jp_auto_tag2";
function frm_page2()
{
add_menu_page('jp-auto-tag2', 'jp-auto-tag2', 'manage_options', __FILE__, array($this, 'show_text_option_page2'), '', 8);
}
function show_text_option_page2()
{
wp_enqueue_style('bootstrap', 'https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css', array(), '3.3.6');
wp_enqueue_script('bootstrap', 'https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js', array(), '3.3.6');
$options = get_option($this->db_option);
if (!empty($options)) {
$Access_Token_Publish_URL = $options["Access_Token_Publish_URL"];
$API_Base_URL = $options["API_Base_URL"];
$Client_ID = $options["Client_ID"];
$Client_secret = $options["Client_secret"];
$max_keyword_num = $options["max_keyword_num"];
}
include_once dirname(__FILE__) . '/jp-auto-tag-tmp2.php';
}
function ajax_event2()
{
$options["max_keyword_num"] = $obj["max_keyword_num"] = (int)$_POST["max_keyword_num"]<5?5:(int)$_POST["max_keyword_num"];
$options["Access_Token_Publish_URL"] = $obj["Access_Token_Publish_URL"] = $_POST["Access_Token_Publish_URL"];
$options["API_Base_URL"] = $obj["API_Base_URL"] = $_POST["API_Base_URL"];
$options["Client_ID"] = $obj["Client_ID"] = $_POST["Client_ID"];
$options["Client_secret"] = $obj["Client_secret"] = $_POST["Client_secret"];
update_option($this->db_option, $options);
print json_encode($obj);
die(0);
}
function api_tag2($post_id)
{
$cuthttp = function ($str = "") {
if (!$str) return $str;
return preg_replace("/https?:\/\/[a-zA-Z0-9|%|\?|_|=|-|\.|\/]*$/m", "", $str);
};
$post = get_post($post_id);
$title = $post->post_title;
$content = strip_tags($post->post_content);
$document = $title . $cuthttp($content);
$options = get_option($this->db_option);
if ($options["Access_Token_Publish_URL"] && $options["Client_ID"] && $options["Client_secret"]) {
$curl = function ($ptn, $options, $token = "", $token_type = "", $document = "") {
switch ($ptn) {
case "token":
$data = [
'grantType' => 'client_credentials',
'clientId' => $options["Client_ID"],
'clientSecret' => $options["Client_secret"],
];
$header = [
'Content-Type: application/json;charset=UTF-8',
];
$url = $options["Access_Token_Publish_URL"];
break;
case "tag":
$data = [
'document' => $document,
'max_keyword_num'=>$options["max_keyword_num"],
];
$header = [
'Authorization: ' . ucfirst($token_type) . ' ' . $token,
'Content-Type: application/json;charset=UTF-8',
];
$url = rtrim($options["API_Base_URL"],"/")."/nlp/v1/keyword";
break;
}
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($curl, CURLOPT_POSTFIELDS, json_encode($data));
curl_setopt($curl, CURLOPT_HTTPHEADER, $header);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_HEADER, true);
$response = curl_exec($curl);
$header_size = curl_getinfo($curl, CURLINFO_HEADER_SIZE);
$header = substr($response, 0, $header_size);
$body = substr($response, $header_size);
$res = (object)json_decode($body, true);
curl_close($curl);
return $res;
};
$res = $curl("token", $options);
$access_token = $res->access_token;
$token_type = $res->token_type;
if ($options["API_Base_URL"] && $document && $access_token){
$res = $curl("tag", $options, $access_token, $token_type, $document);
foreach($res->result as $key=>$val){
$tags[] = $val["form"];
}
wp_set_post_tags($post_id, implode(",", array_unique($tags)), false);
}
}
}
}
$jp_auto_tag2 = new jp_auto_tag2();
add_action('save_post', array($jp_auto_tag2, 'api_tag2'));
add_action('publish_post', array($jp_auto_tag2, 'api_tag2'));
add_action('admin_menu', array($jp_auto_tag2, 'frm_page2'));
add_action('wp_ajax_ajax_event2', array($jp_auto_tag2, 'ajax_event2'));
<form id="ajax-frm">
<table class="table">
<tr>
<td>
プラグイン説明:jp-auto-tag2はapi.ce-cotoha.comのAPIを<br>
使用し投稿文を解析しキーワードをタグを抽出します。<br>
</td>
</tr>
<tr>
<td>
<a href="https://api.ce-cotoha.com/contents/index.html" target="new">https://api.ce-cotoha.com/contents/index.html</a><br>
上記のURLよりユーザー登録を行いAPI情報をそれぞれ入力ください。全て必須項目になります。
</td>
</tr>
<tr>
<td>
Access Token Publish URL:<br>
<input type="text" name="Access_Token_Publish_URL" value="<?=$Access_Token_Publish_URL?>" class="form-control">
</td>
</tr>
<tr>
<td>
API Base URL:<br>
<input type="text" name="API_Base_URL" value="<?=$API_Base_URL?>" class="form-control">
</td>
</tr>
<tr>
<td>
Client ID:<br>
<input type="text" name="Client_ID" value="<?=$Client_ID?>" class="form-control">
</td>
</tr>
<tr>
<td>
Client_secret:<br>
<input type="text" name="Client_secret" value="<?=$Client_secret?>" class="form-control">
</td>
</tr>
<tr>
<td>
抽出するキーワード(タグ数)5以上:<br>
<?php
$max_keyword_num = (int)$max_keyword_num<5?5:$max_keyword_num;
?>
<input type="text" name="max_keyword_num" value="<?=$max_keyword_num?>" class="form-control">
</td>
</tr>
<tr>
<td colspan="2"><input type="button" id="frmsubmit" value="登録する" class="form-control"></td>
</tr>
</table>
</form>
<script>
jQuery(function($){
$("#frmsubmit").on("click",function(){
var ajaxurl = '<?=admin_url( 'admin-ajax.php');?>';
var data = $("#ajax-frm").serializeArray();
data.push({name:"action",value:"ajax_event2"});
$.ajax({
type:'POST',
url:ajaxurl,
data:data,
success:function(obj){
console.log(obj);
alert("更新しました");
}
});
});
})
</script>
プラグインダウンロードはこちら
https://zip358.com/plugin/jp-auto-tag2.zip
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
2, API, COTOHA, GUI, jp-auto-tag, lt, name, NTT, php, plugin, WordPress, Yahoo, アップロード, オプション, コード, ことば, ご確認, ソース, タグ, データ, バージョン, ファイル, フォルダ, プラグイン, プレス, ブログ, もの, ワード, 使用, 停止, 可能, 圧縮, 対応, 感じ, 投稿, 方, 有効, 生成, 画面, 確認, 自動, 自動生成, 解凍, 設定, 際,
パンくずリストの構造化を変えない人がいるよ。
2020.01.29
Gさんから、data-vocabulary.org schema deprecated のお叱り(警告)が出た方はschema.orgの形式の構造体に変更しなくてはなりません。パンくずリストって何って方はまずググってみてください。以前勤めていた会社はこのパンくずリストを対応しているサイトは見かけませんでした。長いものにはまかれろな会社になっていたので誰も言いたいことが言えなかっただけなのかもしれません。
ちなみにこれを変更することによりGさんの検索サイトに表示される時に表示を目立たさせる効果があります。ちょっとした事ですがクリック率はかなり上がります。対応していないとしているでは雲泥の差があります。
タグコードはこんな感じです。
<ol itemscope itemtype="http://schema.org/BreadcrumbList">
<li itemscope itemprop="itemListElement" itemtype="http://schema.org/ListItem">
<a itemprop="item" href="https://zip358.com">
<span itemprop="name">home</span>
</a>
<meta itemprop="position" content="1" />
</li>
<li itemscope itemprop="itemListElement" itemtype="http://schema.org/ListItem">
<a itemprop="item" href="https://zip358.com/PHP">
<span itemprop="name">php入門</span>
</a>
<meta itemprop="position" content="2" />
</li>
</ol>
SEOは必要ないとは言いません。昔のサイトはコードも古いデザインも古いけど上位表示されているサイトがありますよね。それには理由があります、アクセス数と競合会社がいない、ドメインが古いという事から上位表示されているだけで、SEO対策を行ったサイトが出てきたらそちらが上位表示される恐れがあります。そして一番怖いのは古いサイトは下手にデザイン等や構造を変えると上位表示から転落しますので、ご注意ください!
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
BreadcrumbList, data-vocabulary, deprecated, gt, http, itemscope, itemtype, li, lt, ol, org, quot, schema, お叱り, かなり, クス, クリック, コード, こと, これ, サイト, タグ, パン, もの, リスト, 事, 人, 以前, 会社, 何, 効果, 変更, 対応, 差, 形式, 感じ, 方, 時, 検索, 構造, 構造体, 表示, 誰, 警告, 雲泥,
webpに対応しましたプラグインでカバーしました。 Safariめ!!
2020.01.25
WebP Express(ウェッピーエクスプレス)というWordPressのプラグインがあるので、そちらでコンバート(変換)すれば良いのですが、大量に画像があるサイトはそれで変換できないので下記の対応方法で対応をお願いします。
1. WebP Express使用してコンバートする際に webpが生成されます。webpの生成場所を確認する。現在は下記の配下にwebp画像が作られています。
/wp-content/webp-express/webp-images/doc-root/wp-content/uploads
2.1の配下にwebpの画像を生成するために下記のコマンドを実行します。自分の場合、アップロードしている画像をリスト化して一括処理するプログラミングを実行しました。尚、cwebpがインストールされていない場合、インストールする必要があります。さくらレンタルサーバーには入っているみたいです。
cwebp -q 90 元画像名(階層を含む).png -o 変換後のファイル名.webp (変換先の階層を含む)
こうすることで画像は全てwebpに変換することが可能ですが、これだけでは表示が切り替わらないので下記の画像を参照しプラグインの設定を変更してください。
ちなみにこのwebp(ウェッピー)はグーグルさんが開発したものらしいです、大体のブラウザが、こちらの webpに対応しているのですがSafariとIEは非推奨みたいなんですよね。何れwebpに対応すると思います…思いたい。
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
1, 2.1, cwebp, doc-root, Express, Safari, uploads, webp, webp-express, webp-images, WordPress, wp-content, アップロード, インストール, ウェッピーエクスプレス, お願い, カバー, コマンド, コンバート, サーバー, サイト, さくら, そちら, それ, ため, プラグイン, プログラミング, リスト, レンタル, 一括, 下記, 使用, 処理, 場合, 場所, 変換, 大量, 実行, 対応, 必要, 方法, 現在, 生成, 画像, 確認, 自分, 配下, 際,
R-PlayアプリでPS4用リモートプレイが外出先でも出来ちゃう神アプリ!
2020.01.21
R-PlayアプリでPS4用リモートプレイが外出先でも出来ちゃう神アプリがios用にあります。これはとても良い感じがしますがセキュリティの事が心配という方は公式アプリが外出先に対応するまで待つかプレイステーションVITAを購入してそれを使いプレイする方が良いかと思います。
ちなみに外出先からプレイするためにはDMZ(非武装地帯)の設定が必要になります(厳密にはポート開放じゃないだけどね)。そしてモデム兼ルーター機能のあるものにルーターを繋いでいる場合は、ルーターをブリッジモードに変更する必要があります。変更しすると今までIPアドレスが変わるため固定IPアドレスで設定していた機器は再設定が必要になります。ネットワークに詳しい人に設定してもらう事をオススメします。
尚、 R-Playアプリは有料アプリで1400円します、VITAを購入するよりは安いですよね。ちなみに中古のVITAは8000円?9000円します。ちなみに自分はこの神アプリを昨日、知りました。
R-PLAYアプリは下記を参照ください。
※注意:外出先で2時間40分ぐらいプレイすると1G(ギガ)ほど通信量が発生するそうですよ。使い放題のパケじゃないと厳しいかも気をつけましょう。
追記:iosでもPSの純正アプリでリモートプレイ出来るようになりました。
https://www.playstation.com/ja-jp/remote-play/
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
1400, 4, DMZ, iOS, IP, PS, R-Play, VITA, アドレス, アプリ, おすすめ, これ, セキュリティ, それ, ため, ネットワーク, ブリッジ, プレイ, プレイステーション, ポート, モード, モデム, もの, リモート, ルーター, 中古, 事, 人, 公式, 兼, 固定, 地帯, 場合, 変更, 外出, 対応, 心配, 必要, 感じ, 方, 有料, 機器, 機能, 武装, 用, 神, 設定, 購入, 開放,