Nullセーフ演算子?->を提案

2024.04.21

Logging

おはようございます、PHP8からNullセーフ演算子というものが仲間に加わりました.Laravelでいうoptionalと同じ挙動になります.Laravelのoptionalを知らない方に説明をGeminiにしてもらいます.

$country = $object?->user?->getRule();

Nullセーフ演算子とは
・Nullセーフ演算子 ?-> を使用すると、オブジェクトがnullかどうかを事前にチェックすることなく、プロパティやメソッドにアクセスできます.

・Nullセーフ演算子は、プロパティやメソッドだけでなく、配列や関数の呼び出しにも使用できる.

gemini

ということになり、とても便利な演算子です.使う機会はプログラムしていると結構あるので使用してみてはどうでしょうか?

明日へ続く.

タグ

country, gemini, getRule, gt, gt;user, Laravel, null, Nullセーフ演算子, object, optional, オブジェクト, プロパティ, メソッド, 事前, 仲間, 挙動, 演算子, 配列, 関数,

中の人が気づいていないパターンでお客様も気づいていない。 #京たけのこ

2022.12.11

Logging

おはようございます、日曜日の朝です😳。

この挙動はアウトかもだろというサイトを見つけました。恐らくですが中の人が気づいていないパターンでクライアント側も気づいていないパターンを発見してしまいましたが…。

京たけのこというサイトを参照すると、ページが表示された途端にページの下部まで勝手にスクロールされるという仕様になっています。何時からこのような事になっているか分かりませんが、至急直さないといけないような案件だと思います。これでは商品を買うのも一苦労かと思います🫠。

JavaScriptのコードを見てみると恐らくこのコードが悪さをしているようです…。

	// browser window scroll (in pixels) after which the "back to top" link is shown
	var offset = 300,
		//browser window scroll (in pixels) after which the "back to top" link opacity is reduced
		offset_opacity = 1200,
		//duration of the top scrolling animation (in ms)
		scroll_top_duration = 700,
		//grab the "back to top" link
		$back_to_top = $('.cd-top');

	//hide or show the "back to top" link
	$(window).scroll(function(){
		( $(this).scrollTop() > offset ) ? $back_to_top.addClass('cd-is-visible') : $back_to_top.removeClass('cd-is-visible cd-fade-out');
		if( $(this).scrollTop() > offset_opacity ) { 
			$back_to_top.addClass('cd-fade-out');
		}
	});

何故、こういう事が起きるかというとChromeさんのキャッシュが大きく影響していて、JSファイル等は最新のデータを取るように設定していないとブラウザ側のデータ処理を再現する仕様になっているからなのです、なので、毎回のように訪問している人には最新のJSファイルが適用されず昔のデータでページが動作して不具合に気づかないのです。

これは稀に起こるヒューマンエラーのようなものです。確認の怠りが原因ですけどね…なかなかChromeのキャッシュは強力なので、クロスブラウザーテストするのをお勧めします。

タグ

browser window, cd-fade-out&#39, cd-is-visible cd-fade-out&#39, cd-is-visible&#39, cd-top, function, gt, if, link, offset, offset_opacity, scroll, scroll_top, scrolling animation, scrollTop, this, var offset, window, 一苦労, 挙動,

さくらVPSの仕様なのか、分からないけど。

2022.10.14

Logging

おはようございます、昨日は暖かい陽気でしたね🫠。

さて、昨日ドハマリして数時間、時間を費やしてしまった問題が有りました。結論から言えばOSのバージョンの関係で上手くいかなかった。さくらの中の人(開発者)、OSバージョンアップした際の挙動を確認して無さそうな気がします。

どんなトラブルになったのかと言えば、こんな感じ。

作業用VPSサーバーを設置してWEBのコントロールパネルからssh鍵の設定して作業に取り掛かろうとテラターム(ローカル)でログインした所、エラーが出る。

何度、トライしてもパーミッションが駄目だよと弾かれるので、ウインドウズでユーザーの設定なんかを変更したりしたのだけど駄目だった。

リナックスやMacからだとログインできるだよね、なのでコレはWindowsの問題だと思っていた、パーミッション原因だと思っていたのだけど、前サーバーはssh鍵付きでログイン出来てたので変だなと思い、前サーバーのssh鍵を変更してみたら、こちらはすんなりとログイン出来てしまった。

ここで何が違うかと言えば、OSのバージョンだけ8系と9系の違いでログイン出来なくなる。恐らくこちら側の設定がどうこうではなく、何か・・・の接続時のデータ送受信で変になっている気がします。

この事象をさくらVPSに問い合わせしていないので、原因は分からないだけど恐らくOSのバージョンの違いで今のところ発生している問題だと思います。

タグ

Mac, OS, SSH, VPS, web, Windows, アップ, ウィンドウズ, エラー, コレ, コントロール, サーバー, さくら, ターム, テラ, ドハマリ, トライ, トラブル, バージョン, パーミッション, パネル, ユーザー, リナックス, ローカル, ログイン, , , 仕様, 何度, 作業, 原因, 問題, , 変更, 感じ, , 挙動, , 昨日, 時間, , 確認, 結論, 設定, 設置, , 鍵付き, 開発者, 関係, 陽気, , 駄目,

検索されなかったワード埋もれた価値について! #javascript #php

2022.09.26

Logging

おはようございます、今日は引き落とし日です🫠。

さて、今日は検索されなかったキーワードの価値のお話です。此処で言う検索されなかったというのは、エンターキーや検索ボタンを押さなかった、キーワードの価値のお話です、たぶん、その情報をGさんは収集してそうな気がします。GサイトやYサイト等のキーワード収集は基本出来ませんが、自サイトの検索フォームの情報を収集出来ます。

此処からは技術的なお話になりますが、検索ボタンを押した時とは別に文字入力をしたときの挙動を感知するプログラムを導入する事により比較的簡単に導入できるかと思います。例えば下記のようなjavascriptコードを検索フォームに導入します。

document.getElementById("sh").addEventListener("input",(e)=>{
    $.ajax({
        type: "post",
        url: "example.com/sh.php",
        data: {text:this.value},
        dataType: "json",
        success: function (response) {
            
        }
    });
});

あとはPHP側でデータを受信しデータベース等に保存すれば良いだけです。この検索されなかったワードは、結構価値があると思います。より細かな情報を取得したい方はIPアドレスどのページからの情報なのかも取得可能です。

これらのデータを元に販路開拓は十分出来ると思います。情報を保存する際に大量の情報が収集されるので、保存先に一工夫必要になります。JSで制御する手段もありますが、それだとあまり情報収集出来ないですからね。

因みにこのサイトに情報収集の処理は導入していません(今後の導入は未定)。

タグ

addEventListener, ajax, document, getElementById, gt, input, javascript, php, quot, sh, エン, お話, キーワード, コード, サイト, ターキー, とき, フォーム, プログラム, ボタン, ワード, 下記, , 今日, 価値, 入力, 収集, 基本, 導入, 情報, 感知, 挙動, 文字, , , 検索, 此処, , 簡単, ,

ReactNativeのボタンがiosとAndroidでは挙動が違うので代替。

2021.11.18

Logging

今日はReactNative(リアクトネイティブ)でアプリを制作しながら勉強している中で、ボタンを使ってみたら・・・iosとAndroidでは挙動というか見栄えが違うのですよ、ドキュメントにもそう書いていた?。なので、ボタンじゃなくてこちらを使用するほうが良さげです。

Color of the text (iOS), or background color of the button (Android).

こちら【TouchableOpacity】などを使用してボタンを作成しないといけないみたい。こちらで作るとios、Android同じ見栄え(デザイン)になります。作ってて思うことは師というかメンターがいればもっと効率的に開発できそうです。

師匠がほしい今日此頃・・・。

React Native Tutorial #8 – Touchable Components

以上、現場からでした。

import React, { useState } from "react";
import { StyleSheet, Text, TouchableOpacity, View } from "react-native";

const App = () => {
  const [count, setCount] = useState(0);
  const onPress = () => setCount(prevCount => prevCount + 1);

  return (
    <View style={styles.container}>
      <View style={styles.countContainer}>
        <Text>Count: {count}</Text>
      </View>
      <TouchableOpacity
        style={styles.button}
        onPress={onPress}
      >
        <Text>Press Here</Text>
      </TouchableOpacity>
    </View>
  );
};

const styles = StyleSheet.create({
  container: {
    flex: 1,
    justifyContent: "center",
    paddingHorizontal: 10
  },
  button: {
    alignItems: "center",
    backgroundColor: "#DDDDDD",
    padding: 10
  },
  countContainer: {
    alignItems: "center",
    padding: 10
  }
});

export default App;

タグ

Android, background, button, color, from, import, iOS, of, OR, quot, react, ReactNative, Text, The, TouchableOpacity, useState, アプリ, こちら, こと, デザイン, ドキュメント, ネイティブ, ボタン, メンター, リアクト, , 今日, 今日此頃, 代替, 作成, 使用, 制作, 勉強, , 師匠, 挙動, 現場, 見栄え, 開発,

jsのクリックイベントの謎??

2019.06.22

Logging

javaScriptとjqueryのクリックイベントの挙動が違うのは
わかったのですが・・・。
これは結構奥が深い気がします。

See the Pen jsのクリックイベントの謎?? by taoka (@taoka-toshiaki) on CodePen.0

タグ

0, 265, BY, codepen, default, embed, gt, hash, Height, href, html, ID, io, javascript, jquery, JS, lt, ON, Pen, QXprJX, result, See, slug, tab, taoka, taoka-toshiaki, The, theme, user, イベント, クリック, これ, , 挙動, , ,

php:3項演算子の使い方。

2017.09.16

Logging


3項演算子の使い方を解説しているサイトは
数多くあるので割愛します。プログラミングの記述例を貼っときます。

<?php
$a=10;
$ret = $a>9 ? "A9":"B9";
print($ret);
//A9

このような感じで3項演算子を使います、これあまり複雑怪奇な
書き方をしなければ自分は普通にコーディングに書いて良いような気がします。
トイウコトで3項演算子を使うと便利かな。
コードって書かなくなると何ていうか、自分の場合、苦労して覚えていないので
あっという間に忘れ去ってしまうですけどね。この頃、javascriptの記述や挙動がいまいち
つかめていない、javaとか言うものを全然勉強していないからなんだろうなと感じる事が多々あり。
もっと使う機会を増やしたいのだけど、この頃、PHPオンリーなので
何とも・・・、他人のコード見て自分もガリガリとコードを書きたいなと
思うのですけど、いまの自分が任されている仕事にゴリゴリ書くことが必要不可欠かと
言えばそうでもないですよね。
他人が書いたコードの修正や機能追加ってのは
どうしてもやりづらく、特にいわゆる普通のコードで
書いている場合、手直しが面倒くさい。普通のコードには
普通のコーディングしないと何だか、無駄な処理が増えるだけだなと。
逆に洗練されたコードは余分なものが殆どないので
下手に触ると挙動が変になるというデメリットもあるのですがね。
会社で難コーディングが書けない分、自宅でいろいろコードを書かないと
進歩がなさそうな気がします。その書くことに時間をこの頃使っていない気がします。
ちなみに自サイトのブログ以外のサイトを
昨日、映画を観終わって帰宅後リニューアルしました。
 
 

タグ

$a&gt, 3項演算子, A9, AM, B9, javascript, php, ret, コード, トイウコト, プログラミング, やさしい教本, 他人, 使い方, 手直し, 挙動, 書き方, 記述, 難コーディング,

プログラムで詰まるとストレスに繋がる。

2017.05.09

Logging


プログラムで詰まるとストレスに繋がる。
「なぜ、動かないだろうか」とか「なぜ、動いているのに挙動が変だったり」とか
プログラムを書いている人なら一度は経験したことがあると思います。
誰かに聞いてうまく動く場合もあるし、そうでない場合もある。
一休みして再度、問題のプログラムを見てみると
単なるスペルミスだったりすることもあります。
このプログラムが動かないというのは
初心者が多く経験する問題だと思いますが
経験を積むと、プログラムは動いているだけど
思ったように動いてくれないという事を経験するようになります。
この時、自分を過信すると問題解決するまで、かなり時間を費やす事に
成りかねないのですが、自分はよくこれに陥りやすいです。
そういうときに限って、他の仕事は舞い込んできたりして
「あぁ?」ってなり優先順位を変えなくてはならなくなったりします。
詰まるところ、これがストレスの原因になったりします。
プログラマに憧れる小中学生が増えてきているらしいです、
将来就きたい職業にプログラマーというのが上位の方になってたり
していますが、自分が思うのに勉強も大事ですが
結構プログラマーって忍耐力や根気のいる職業かなと思います。

タグ

ストレス, スペル, プログラマー, プログラミング入門講座, プログラム, 上位, 優先順位, 初心者, 問題, 小中学生, 忍耐力, 思考法, 挙動, 根気, 職業, 誰か, 重要事項,

なぜ、間違ったサンプルコードがネットでは散らばっているのか?

2015.02.28

Logging


なぜ、間違ったサンプルコード(環境が同一ではないと動かないコード)が散らばっているのか。こたえは簡単で参考書を売るためです。サンプルコードを掲載しているサイトには、ほぼ100%と言えるぐらいアフェリエイトをしている。使えないコードを実行してこれじゃ一部、挙動がおかしいやという輩が再度、サンプルコードのサイトを見に行った時に参考書を買う確率があるため。そのため、収益が目的で間違ったサンプルコードを掲載しているサイトが有ります(推測です)。そういう観点から言っても自分のサイトは比較的に良心的かとか思ってます。コメントがついていないですが(^^ゞ
全然、関係ないのですが非同期通信のサンプルコードを掲載します、掲載は明日か今日です。この頃、思うですけどサンプルコードって意味があるのかなということです。わからない人がこのサイトを訪問したとします。動いてしまったら、あまり考えなくても使えてしまうですよね。今回掲載する非同期通信のサンプルコードも応用すれば結構色々べんりな事ができるのです。また、ブログツールのサンプルコードも掲載しようかなとか思っていたのですがそれは控えときます。あと前、言っていたWordPressのプラグインも掲載は控えときます。ある意味、自分がしていることは技術の安売りみたいなものです。おそらく、そういう感じなんですね。WordPressプラグインのちゃんとしたサンプルコードなんてググってもでてきません。そういう観点からも掲載は控えることにします。ちなみにググって掲載してそうなサンプルコードは順次、ひまな時に掲載することにします。
 

タグ

, WordPressプラグイン, アフェリエイト, こたえ, サイト, サンプルコード, ひま, ブログツール, べんりな事, 再度, 参考書, 収益, 安売り, 意味, 挙動, 掲載, 確率, 観点, , 非同期通信, 順次,