<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>Function on qwerty.work</title>
        <link>https://qwerty.work/tags/function/</link>
        <description>Recent content in Function on qwerty.work</description>
        <generator>Hugo -- gohugo.io</generator>
        <language>ja-JP</language>
        <lastBuildDate>Sun, 14 Feb 2021 00:27:04 +0900</lastBuildDate><atom:link href="https://qwerty.work/tags/function/index.xml" rel="self" type="application/rss+xml" /><item>
            <title>JavaScriptから非同期でPHPのファンクション（関数）を呼び出すサンプル</title>
            <link>https://qwerty.work/post/2021/02/javascript-call-php-function/</link>
            <pubDate>Sun, 14 Feb 2021 00:27:04 +0900</pubDate>
            <guid>https://qwerty.work/post/2021/02/javascript-call-php-function/</guid>
            <description>&lt;p&gt;PHPのFunctionの一部に&lt;code&gt;stream_get_contents&lt;/code&gt;（指定したURLのHTMLソースを取得する関数）を使っていて、それを多用すると、PHPの処理が終わるまでページの表示が停まるので、ページの読込がかなり遅くなります。どうにかならないかな？と考えてみました。&lt;/p&gt;&#xA;&lt;p&gt;**『PHPのファンクションをJavscriptから呼び出せば、非同期で表示できるのでは？』**と思い、やり方を探してヒントになるやり方を見つけたのでメモ。&lt;/p&gt;&#xA;&lt;p&gt;重たい処理はサーバー側のPHPで処理させて、表示の部分だけJSの非同期で処理するといった感じです。&lt;/p&gt;&#xA;&lt;h2 id=&#34;サンプル&#34;&gt;サンプル&#xA;&lt;/h2&gt;&lt;h3 id=&#34;jqueryなどを使わずにできるシンプルな方法のサンプル&#34;&gt;jQueryなどを使わずにできるシンプルな方法のサンプル&#xA;&lt;/h3&gt;&lt;p&gt;これをいじっていけば旨くいけそうですが、AMPページとかには使えそうにないので、AMPページではそうするか考えないといけない感じです。&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-javascript&#34; data-lang=&#34;javascript&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;&amp;lt;?&lt;/span&gt;&lt;span style=&#34;color:#a6e22e&#34;&gt;php&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;function&lt;/span&gt; &lt;span style=&#34;color:#a6e22e&#34;&gt;func&lt;/span&gt;(&lt;span style=&#34;color:#a6e22e&#34;&gt;$a&lt;/span&gt;) {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  &lt;span style=&#34;color:#a6e22e&#34;&gt;echo&lt;/span&gt;( &lt;span style=&#34;color:#a6e22e&#34;&gt;$a&lt;/span&gt; );&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;}&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;?&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&#34;color:#a6e22e&#34;&gt;script&lt;/span&gt; &lt;span style=&#34;color:#a6e22e&#34;&gt;type&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;text/javascript&amp;#34;&lt;/span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;async&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;function&lt;/span&gt; &lt;span style=&#34;color:#a6e22e&#34;&gt;test&lt;/span&gt;(){&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  document.&lt;span style=&#34;color:#a6e22e&#34;&gt;getElementById&lt;/span&gt;(&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;php_code&amp;#34;&lt;/span&gt;).&lt;span style=&#34;color:#a6e22e&#34;&gt;innerHTML&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#39;&amp;lt;?php func(&amp;#34;hello&amp;#34;);?&amp;gt;&amp;#39;&lt;/span&gt;;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;}&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&#34;color:#960050;background-color:#1e0010&#34;&gt;/script&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&#34;color:#a6e22e&#34;&gt;a&lt;/span&gt; &lt;span style=&#34;color:#a6e22e&#34;&gt;href&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;#&amp;#34;&lt;/span&gt; &lt;span style=&#34;color:#a6e22e&#34;&gt;onclick&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;test(); return false;&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;&amp;gt;&lt;/span&gt; &lt;span style=&#34;color:#a6e22e&#34;&gt;test&lt;/span&gt; &lt;span style=&#34;color:#f92672&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&#34;color:#960050;background-color:#1e0010&#34;&gt;/a&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&#34;color:#a6e22e&#34;&gt;p&lt;/span&gt; &lt;span style=&#34;color:#a6e22e&#34;&gt;id&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;php_code&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;&amp;gt;&amp;lt;&lt;/span&gt;&lt;span style=&#34;color:#960050;background-color:#1e0010&#34;&gt;/p&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://qwerty.work/test/test-2021-02-14.php&#34; &gt;テストページ&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;参考サイト&#xA;こちらのページにはプレーンなJavascriptのサンプルと、jQueryを使ったサンプルがあります。&lt;/p&gt;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;  &#xA;&#xA;&#xA;&lt;div class=&#34;link-card&#34;&gt;&#xA;  &lt;a href=&#34;https://www.it-swarm.jp.net/ja/php/javascript%E3%81%8B%E3%82%89php%E9%96%A2%E6%95%B0%E3%82%92%E5%91%BC%E3%81%B3%E5%87%BA%E3%81%99/940293979/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &#xA;    &lt;div class=&#34;link-card-image&#34;&gt;&#xA;      &lt;img src=&#34;https://image.thum.io/get/width/300/crop/200/https://www.it-swarm.jp.net/ja/php/javascript%E3%81%8B%E3%82%89php%E9%96%A2%E6%95%B0%E3%82%92%E5%91%BC%E3%81%B3%E5%87%BA%E3%81%99/940293979/&#34; alt=&#34;https://www.it-swarm.jp.net/ja/php/javascript%E3%81%8B%E3%82%89php%E9%96%A2%E6%95%B0%E3%82%92%E5%91%BC%E3%81%B3%E5%87%BA%E3%81%99/940293979/&#34; loading=&#34;lazy&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &#xA;    &lt;div class=&#34;link-card-body&#34;&gt;&#xA;      &lt;span class=&#34;link-card-title&#34;&gt;https://www.it-swarm.jp.net/ja/php/javascript%E3%81%8B%E3%82%89php%E9%96%A2%E6%95%B0%E3%82%92%E5%91%BC%E3%81%B3%E5%87%BA%E3%81%99/940293979/&lt;/span&gt;&#xA;      &#xA;      &lt;span class=&#34;link-card-url&#34;&gt;https://www.it-swarm.jp.net/ja/php/javascript%E3%81%8B%E3%82%89php%E9%96%A2%E6%95%B0%E3%82%92%E5%91%BC%E3%81%B3%E5%87%BA%E3%81%99/940293979/&lt;/span&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&#xA;</description>
        </item><item>
            <title>IME、fnキーを押さないとF7だけでカナ変換できないときの対処。</title>
            <link>https://qwerty.work/post/2015/05/imefnf7functionbios/</link>
            <pubDate>Sat, 09 May 2015 00:40:00 +0900</pubDate>
            <guid>https://qwerty.work/post/2015/05/imefnf7functionbios/</guid>
            <description>&lt;p&gt;いつもWindowsで日本語入力する際、F7を押してダイレクトに全角カナ変換をしています。しかし、あるノートパソコンを使うことになったのですが、F7を押してもいつものようにダイレクトに全角カタカナに&lt;strong&gt;変換でききない&amp;hellip;。&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;なぜかfnキーと一緒にF7を押すと変換できます。今後、変換の度にfn＋F7を押すのかと考えると使い勝手が悪くとても面倒です。&lt;/p&gt;&#xA;&lt;p&gt;どうにかF7のみでダイレクトに変換できるようにならないかといろいろ調べてみると方法がありました。&lt;/p&gt;&#xA;&lt;h4 id=&#34;imeの標準的なファンクションキーの割り当て&#34;&gt;IMEの標準的なファンクションキーの割り当て&#xA;&lt;/h4&gt;&lt;pre&gt;&lt;code&gt;  キー&#xA;  変換&#xA;&#xA;&#xA;  F6&#xA;  かな&#xA;&#xA;&#xA;  F7&#xA;  全角カナ&#xA;&#xA;&#xA;  F8&#xA;  半角&#xA;&#xA;&#xA;  F9&#xA;  全角英数&#xA;&#xA;&#xA;  F10&#xA;  半角英数&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;h3 id=&#34;原因&#34;&gt;原因&#xA;&lt;/h3&gt;&lt;p&gt;メーカーや機種によってはファンクションキーに刻印された各アイコンに示される機能 (輝度や音量調整、ミュートの切り替えなど) やマルチメディアの機能を一つのキーを押すだけで実行できるよう割り当てがされており、BIOSで優先する設定になっているからのようです。 （特にDELL、HP、レノボあたりのノートPC）&lt;/p&gt;&#xA;&lt;h3 id=&#34;対処方法&#34;&gt;対処方法&#xA;&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;BIOS画面&lt;/strong&gt;で以下の項目の&lt;strong&gt;いずれか&lt;/strong&gt;を探し、&lt;strong&gt;Disable（無効）&lt;strong&gt;にすることで標準的な&lt;/strong&gt;ファンクションキー&lt;/strong&gt;の割り当て機能を優先するように変更すれば、fnキーを押さなくてもF7だけで変換できるように設定できるみたいです。（メーカーや機種によってBIOSの項目の名称や設定の値の表示が異なることがあります。）&lt;/p&gt;&#xA;&lt;p&gt;※BIOSの設定画面は電源投入時にすぐF2（機種によってはDELやESC）を押して表示します。&lt;/p&gt;&#xA;&lt;h4 id=&#34;biosの設定項目&#34;&gt;BIOSの設定項目&#xA;&lt;/h4&gt;&lt;pre&gt;&lt;code&gt;  BIOSの項目&#xA;  設定内容&#xA;&#xA;&#xA;  **Action keys Mode**&#xA;  Enable（有効）&#xA;&#xA;  ↓**&#xA;&#xA;  Disable**（無効）&#xA;&#xA;&#xA;  **Fn Key Switch**&#xA;  Enable（有効）&#xA;&#xA;  ↓&#xA;  &#xA;  **Disable**（無効）&#xA;&#xA;&#xA;  **hotkey mode**&#xA;  Enable（有効）&#xA;&#xA;    ↓**&#xA;&#xA;    Disable**（無効）&#xA;&#xA;    &#xA;&#xA;  または&#xA;&#xA;  &#xA;&#xA;  Hotkey Mode&#xA;&#xA;  ↓&#xA;  &#xA;  **Legacy Mode**&#xA;&#xA;&#xA;  **Function Key Behavior**&#xA;  Multimedia Key First（マルチメディアキー優先）&#xA;&#xA;  ↓&#xA;  &#xA;  **Function Key First**（ファンクションキーを優先）&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;※変更後はF10押してBIOS設定を保存・終了して再起動します。&lt;/p&gt;&#xA;&lt;h3 id=&#34;結果&#34;&gt;結果&#xA;&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;BIOS&lt;/strong&gt;を変更してみたところ、F7だけで全角カナに&lt;strong&gt;変換できるようになりました。&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;h4 id=&#34;参考&#34;&gt;参考&#xA;&lt;/h4&gt;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;http://support.hp.com/jp-ja/document/c02019869&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;http://support.hp.com/jp-ja/document/c02019869&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;http://support.hp.com/jp-ja/document/c02498652&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;http://support.hp.com/jp-ja/document/c02498652&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;http://support.lenovo.com/jp/ja/documents/ht072691&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;http://support.lenovo.com/jp/ja/documents/ht072691&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;</description>
        </item></channel>
</rss>
