ホームページ php教程 php手册 インスタンスから始める

インスタンスから始める

Jun 21, 2016 am 09:04 AM
gt include lt php

3 PHP の練習
PHP の多くの機能は他のソフトウェアやツールに関連しています。これまでに学んだ PHP の知識を使用して、単純なインタラクティブな Web サイトの構築を試みることができます。このプロセスを通じて私たちは多くのことを学ぶことができます。それでは、典型的な個人 Web サイトの構築に焦点を当てましょう。

3.1 サイトを計画する
一般に、個人サイトには、ウェルカム ページ、ゲストブック ページ、ブックマーク リンク ページ、カウンター、連絡先情報、さらには写真コレクションやいくつかの音楽ファイルなどが含まれます。タイトルページ、連絡先情報ページ、履歴書ページから始めましょう。標準のユニバーサル ページ ヘッダーとフッターも必要です。

タイトル ページ--front.html


ここに非常に単純な HTML ファイルがあります:


<br>私の個人的なホームページ -- ようこそ<br></TITLE> ;<br/> </HEAD><br><BODY><br><H1><br>私の個人ホームページ<br></H1><br><H2><br>ようこそ<br></H2><br><HR><br><P><br>ようこそ私のささやかな住居へ、ここにはまだ何もありませんが。 <br></P><br><P><br>でも、すぐにさらに増えることを願っています。 <br></P><br><HR><br><P ALIGN="CENTER"><SMALL><br>私自身、1999 年<br></I> ;/P><br></BODY><br></HTML><br><br>連絡先情報ページ--count.html<br><br>同様に、別の単純なページがあります: <br><HTML><br><HEAD><br><TITLE> <br>私の個人ホームページ - 連絡先情報<br>



私の個人ホームページ



連絡先情報
< /H2>



1-800-PHP-INFO までご連絡ください





< ;SMALL>
著作権?1999年





3.2 HTMLからPHPへ

上からわかるように、すべてのページに同じヘッダーとフッターがあります。作業負荷が軽い場合は、上記のように各ページに同じ情報を書き込むのは問題ありませんが、100 ページを超えるページがあり、すべてのページのヘッダーまたは下部を変更する必要がある場合、どれだけの労力を費やさなければならないかを想像してみてください。ページごとに手動で変更するのは、なんと退屈で退屈な作業でしょう。したがって、これらのページの PHP ヘッダー ファイルと下部ファイルを作成し、すべての HTML ページでそれらを参照するだけで済みます。これらのインクルード ファイルは、include というサブディレクトリに配置します。以下では、これらのサイトに共通するコンテンツをファイルに書き込みます。

サイト全体の変数設定: common.inc
// サイト全体の変数
$MyEmail = "phptalk@tnc.org";
$MyEmailLink = "$MyEmail";
$MyName = "PHP Talk";
$MySiteName = $MyName." のホームページ";
?>

ユニバーサル ページ ヘッダー: header.inc
< ;?
// 一般的なページヘッダーを定義します
?>


<br><? echo "$MySiteName - $title" ?><br></TITLE> echo " $MySiteName"; ?><br/></H1><br/><H2><br/><? echo "$title" ; ?><br/></H2><br/><HR><br/><br/>ユニバーサル ページ下部: フッター。 inc<br/><?<br/>//ユニバーサル ページ下部<br/>?><br><HR><br><P ALIGN=" CENTER"><br><SMALL><br>Copyright ? by <br><? $MyName ($MyEmailLink)"; ?><br>、1999<br></I> </SMALL><br></P><br></BODY><br></HTML><br><br>新しいページfront.php3 : <br><?<br/>include("include/common.inc");<br/>$title = "ようこそ";<br/> include("include/header.inc");<br/>?><br><P><br>私のサイトへようこそここにはまだ何もありませんが、質素な住居です。 <br></P><br><P><br>でも、すぐにさらに増えることを願っています。 <br></P><br><?<br/>include("include/footer.inc");<br/>?><br><br>新しいcont.php3: <br><?<br/>include("include/common.inc"); $title = "連絡先情報";<br/>include("include/header.inc");<br/>?><br><P><br>1-800-PHP-INFO までご連絡ください<br></P><br> < ;?<br/>include("include/footer.inc");<br/>?><br><br>これで、この配置の利点が推測できるようになります。ページのヘッダーまたは下部を変更したい場合は、対応するファイルを変更するだけで済みます。電子メール アドレスや名前を変更したい場合は、common.inc ファイルを変更するだけです。任意のファイル名またはファイル拡張子のファイルをファイルに含めることができ、他のサイトのファイルを含めることもできることにも注目してください。 <br><br>3.3 カウンター<br><br> ホームページにカウンターを追加しましょう。この例は何度も説明されていますが、ファイルの読み取りと書き込み、および独自の関数の作成方法を示すのに依然として役立ちます。 counter.inc には次のコードが含まれています: <br><?<br/>/*<br/>|| 単純なカウンター <br/>*/<br/>function get_hitcount($counter_file)<br/>{<br/>/* カウンターがゼロに戻っていない場合は、このようにします。まだ使用されていない場合、初期値は 1 になります<br/>もちろん、人々を騙すために初期値を 20000 に設定することもできます<br/>*/<br/>$count=0;<br/>// カウンターを格納するファイルが既に存在する場合は、その内容を読み取ります<br/>if ( file_exists($counter_file ) ) <br/>{<br/>$fp=fopen($counter_file,"r");<br/>// 上位 20 件だけを取り上げました。あなたのサイトがあまり人気にならないことを願っています<br/>$count=0+ fgets($fp,20 );<br/>//関数 fgets() は文字列を返すので、0を追加することで自動的に整数に変換できます<br/>fclose($fp);<br/>// ファイル操作は完了です<br/>}<br/> // カウント値を 1 回増加します <br/>$count++;<br/>// 新しいカウント値をファイルに書き込みます<br/>$fp=fopen($counter_file,"w");<br/>fputs($fp,$count);<br/>fclose($ fp);<br/># カウント値を返します <br/>return ($count);<br/>}<br/>?><br>次に、このカウンターを表示するようにfront.php3ファイルを変更します: <br><?<br/>include("include/counter.inc") ;<br/>// カウント値を入れます counter.txt ファイルに入れ、読み取って出力します <br/>printf ("<CENTER><B>%06d</B></CENTER> <BR>n" ,<br>get_hitcount("counter.txt" ));<br>include("include/footer.inc");<br>?><br>新しいfront.php3をチェックしてください<br><br>3.4フィードバックフォーム<br><br>フィードバックフォームをもう1つ追加しましょう視聴者が必要事項を記入して電子メールで送信してください。たとえば、非常に単純なメソッドを使用して実装します。1 つはビューアに入力フォームを提供するページ、もう 1 つはフォーム データを取得して処理し、メールで送信するページです。 <br><br>PHP でフォーム データを取得するのは非常に簡単です。フォームが送信されると、フォームに含まれる各要素に対応する値が割り当てられ、一般変数への参照のように使用できます。 <br><FORM name="myform" ACTION="process_form.php3" METHOD="POST"><br><INPUT TYPE="TEXT" NAME="mytext" VALUE="何らかの値"><br></FORM> ;<br/><br/> process_form.php3 では、変数 $mytext に入力された値が割り当てられます - 非常に簡単です。同様に、リストボックス、チェックボックス、ラジオボックス、ボタンなどのフォーム要素から変数値を取得できます。必要なのは、後で参照できるように、フォーム内の各要素に名前を付けることだけです。 <br/><br/>この方法によれば、名前、メールアドレス、メッセージの3つの要素を含む単純なフォームを生成できます。訪問者がフォームを送信すると、フォームを処理する PHP ページ (sendfdbk.php3) がデータを読み取り、名前が空かどうかを確認し、最後にデータを電子メールで送信します。 <br/><br/>フォーム: form.php3<br/><?<br/>include("include/common.inc");<br/>$title = "フィードバック";<br/>include("include/header.inc");<br/>?><br>< P><br><FORM ACTION="sendfdbk.php3" METHOD="POST"><br><INPUT TYPE="テキスト" NAME="名前" value="あなたの名前" SIZE="20" MAXLENGTH="30" ><br><INPUT TYPE="テキスト" MAXLENGTH="40" WIDTH="20" value="あなたのメールアドレス" NAME="メールアドレス"><br><BR><br><TEXTAREA ROWS="7" COLS= "40" NAME="comment"><br>私のホームページに関するフィードバック。<br></TEXTAREA><br><BR><br><INPUT TYPE="submit" VALUE="フィードバックを送信!"><br>< /FORM><br></P><br><?<br/>include("include/footer.inc");<br/>?><br><br>フォームの処理: sendfdbk.php3<br><?<br>include("include/common. inc ");<br>$title = "フィードバック";<br>include("include/header.inc");<br>if ( $name == "" ) <br>{<br>// 今では匿名のコメントが嫌いです! <br>echo "え?どうして匿名なの?";<br>} <br>elseif ($name == "あなたの名前") <br>{<br>// この視聴者は本当に名前を明かされたくないのです! <br>echo "こんにちは ? <B>あなたの名前</B> は<br>あなたの実際の名前に置き換えられることになっています!</B>";<br>} <br>else <br>{<br>// 丁寧なありがとうを出力します<br>echo " <br>こんにちは、$name。<br><BR><br>フィードバックありがとうございます。大変感謝しております。<br><BR><br>$MyName <BR><br>$MyEmailLink<br>"; <br> // 最後にメールを送信します <br>mail($MyEmail, "Feedback.","<br>Name : $name<br>E-mail : $email<br>Comment : $comment <br>");<br>}<br>include("include/footer.inc ");<br>?><br><br>3.5 シンプルなサイト内検索エンジン<br><br>PHP は外部プログラムを呼び出すことができます。 Unix 環境では、grep プログラムを使用して単純な検索エンジンを実装できます。もう少し複雑にすることもできます。ページを使用して、ユーザーが検索文字列を入力してクエリ結果を出力するためのフォームを出力します。 <br><?<br/>include("include/common.inc");<br/>$title = "検索";<br/>include("include/header.inc");<br/>?><br><P><br><フォームアクション="<? echo "$PHP_SELF"; ?>" METHOD="POST"><br><INPUT TYPE="text" NAME="searchstr" value="<? echo "$searchstr"; ?> ;"<br/>SIZE="20" MAXLENGTH="30"><br><INPUT TYPE="submit" VALUE="検索!"><br></FORM><br></P><br><?<br>if ( ! empty($searchstr) ) <br>{<br>// empty() はクエリ文字列が空かどうかをチェックするために使用されます<br>// 空でない場合は grep query を呼び出します<br>echo "<HR>n";<br>// grep を呼び出します大文字と小文字を区別しないモードですべてのファイルをクエリします<br>$cmdstr = "grep -i $searchstr *";<br>$fp = Popen( $cmdstr, "r" ); // コマンドを実行し、パイプを出力します<br>$myresult = array( ); // クエリ結果を保存します <br>while( $buffer = fgetss ($fp, 4096)) <br>{<br>// grep は次の形式を返します: ファイル名: 一致する文字列の行数 <br>// そこで関数を使用しますsplit () データを分離して処理します<br>list($fname, $fline) = split(":",$buffer, 2);<br>// 最初に一致した結果のみを出力します<br>if (!define($myresult[ $fname ]))<br>$myresult[$fname] = $fline;<br>}<br>// 結果を配列に保存し、処理して出力できます<br>if ( count($myresult) )<br>{<br>echo " < ;OL>n";<br>while(list($fname,$fline) = each($myresult))<br>echo "<LI><br/><A HREF="$fname">$fname</A> : $fline </LI>n";<br>echo "</OL>n";<br>} <br>else <br>{<br>// クエリ結果がない場合<br>echo "申し訳ありません。<B>$searchstr<で検索してください。 ;/B> ;<br>結果は返されませんでした。<BR>n";<br>}<br>pclose($fp);<br>}<br>?><br><?<br>include("include/footer.inc");<br>?> ;<br><br> <br>注: <br><br>PHP_SELF は PHP の組み込み変数です。現在のファイル名が含まれます。 <br>fgets() は、最大 4096 (指定された) 文字長までファイルを 1 行ずつ読み取ります。 <br>fgetss() は、出力 HTML タグを解析することを除いて、fgets() に似ています。 <br>split() のパラメータは 2 です。これは、出力を 2 つの部分に分割するだけでよいためです。 「:」も省略する必要があります。 <br>each() は配列操作関数であり、配列全体をより簡単に走査するために使用されます。 <br>popen()、pclose() は、パイプライン処理が追加されていることを除いて、fopen()、fclose() と非常によく似た機能を持っています。 <br>上記のコードは検索エンジンを実装するための良い方法ではないことに注意してください。これは、PHP をより良く学習するための単なる例です。理想的には、キーワードのデータベースを構築してから検索する必要があります。 <br><br></span> <p style="width:100%;text-align:center;margin:10px 0"> <br> <br> </p> <p style="width:100%;text-align:center;margin:10px 0"> </p> <p class="clear"></p> </div> </div> <div class="wzconShengming_sp"> <div class="bzsmdiv_sp">このウェブサイトの声明</div> <div>この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。</div> </div> </div> <ins class="adsbygoogle" style="display:block" data-ad-format="autorelaxed" data-ad-client="ca-pub-5902227090019525" data-ad-slot="2507867629"></ins> <script> (adsbygoogle = window.adsbygoogle || []).push({}); </script> <div class="AI_ToolDetails_main4sR"> <ins class="adsbygoogle" style="display:block" data-ad-client="ca-pub-5902227090019525" data-ad-slot="3653428331" data-ad-format="auto" data-full-width-responsive="true"></ins> <script> (adsbygoogle = window.adsbygoogle || []).push({}); </script> <!-- <div class="phpgenera_Details_mainR4"> <div class="phpmain1_4R_readrank"> <div class="phpmain1_4R_readrank_top"> <img onerror="this.onerror=''; this.src='/static/imghw/default1.png'" onerror="this.onerror=''; this.src='/static/imghw/default1.png'" src="/static/imghw/hotarticle2.png" alt="" /> <h2>人気の記事</h2> </div> <div class="phpgenera_Details_mainR4_bottom"> <div class="phpgenera_Details_mainR4_bottoms"> <a href="https://www.php.cn/ja/faq/1796780570.html" title="R.E.P.O.説明されたエネルギー結晶と彼らが何をするか(黄色のクリスタル)" class="phpgenera_Details_mainR4_bottom_title">R.E.P.O.説明されたエネルギー結晶と彼らが何をするか(黄色のクリスタル)</a> <div class="phpgenera_Details_mainR4_bottoms_info"> <span>3週間前</span> <span>By 尊渡假赌尊渡假赌尊渡假赌</span> </div> </div> <div class="phpgenera_Details_mainR4_bottoms"> <a href="https://www.php.cn/ja/faq/1796780641.html" title="R.E.P.O.最高のグラフィック設定" class="phpgenera_Details_mainR4_bottom_title">R.E.P.O.最高のグラフィック設定</a> <div class="phpgenera_Details_mainR4_bottoms_info"> <span>3週間前</span> <span>By 尊渡假赌尊渡假赌尊渡假赌</span> </div> </div> <div class="phpgenera_Details_mainR4_bottoms"> <a href="https://www.php.cn/ja/faq/1796785841.html" title="アサシンのクリードシャドウズ:シーシェルリドルソリューション" class="phpgenera_Details_mainR4_bottom_title">アサシンのクリードシャドウズ:シーシェルリドルソリューション</a> <div class="phpgenera_Details_mainR4_bottoms_info"> <span>2週間前</span> <span>By DDD</span> </div> </div> <div class="phpgenera_Details_mainR4_bottoms"> <a href="https://www.php.cn/ja/faq/1796780520.html" title="R.E.P.O.誰も聞こえない場合はオーディオを修正する方法" class="phpgenera_Details_mainR4_bottom_title">R.E.P.O.誰も聞こえない場合はオーディオを修正する方法</a> <div class="phpgenera_Details_mainR4_bottoms_info"> <span>3週間前</span> <span>By 尊渡假赌尊渡假赌尊渡假赌</span> </div> </div> <div class="phpgenera_Details_mainR4_bottoms"> <a href="https://www.php.cn/ja/faq/1796779766.html" title="WWE 2K25:Myriseのすべてのロックを解除する方法" class="phpgenera_Details_mainR4_bottom_title">WWE 2K25:Myriseのすべてのロックを解除する方法</a> <div class="phpgenera_Details_mainR4_bottoms_info"> <span>3週間前</span> <span>By 尊渡假赌尊渡假赌尊渡假赌</span> </div> </div> </div> <div class="phpgenera_Details_mainR3_more"> <a href="https://www.php.cn/ja/article.html">もっと見る</a> </div> </div> </div> --> <div class="phpgenera_Details_mainR3"> <div class="phpmain1_4R_readrank"> <div class="phpmain1_4R_readrank_top"> <img onerror="this.onerror=''; this.src='/static/imghw/default1.png'" onerror="this.onerror=''; this.src='/static/imghw/default1.png'" src="/static/imghw/hottools2.png" alt="" /> <h2>ホットAIツール</h2> </div> <div class="phpgenera_Details_mainR3_bottom"> <div class="phpmain_tab2_mids_top"> <a href="https://www.php.cn/ja/ai/undresserai-undress" title="Undresser.AI Undress" class="phpmain_tab2_mids_top_img"> <img onerror="this.onerror=''; this.src='/static/imghw/default1.png'" onerror="this.onerror=''; this.src='/static/imghw/default1.png'" class="lazy" data-src="https://img.php.cn/upload/ai_manual/001/246/273/173411540686492.jpg?x-oss-process=image/resize,m_fill,h_50,w_50" src="/static/imghw/default1.png" alt="Undresser.AI Undress" /> </a> <div class="phpmain_tab2_mids_info"> <a href="https://www.php.cn/ja/ai/undresserai-undress" title="Undresser.AI Undress" class="phpmain_tab2_mids_title"> <h3>Undresser.AI Undress</h3> </a> <p>リアルなヌード写真を作成する AI 搭載アプリ</p> </div> </div> <div class="phpmain_tab2_mids_top"> <a href="https://www.php.cn/ja/ai/ai-clothes-remover" title="AI Clothes Remover" class="phpmain_tab2_mids_top_img"> <img onerror="this.onerror=''; this.src='/static/imghw/default1.png'" onerror="this.onerror=''; this.src='/static/imghw/default1.png'" class="lazy" data-src="https://img.php.cn/upload/ai_manual/001/246/273/173411552797167.jpg?x-oss-process=image/resize,m_fill,h_50,w_50" src="/static/imghw/default1.png" alt="AI Clothes Remover" /> </a> <div class="phpmain_tab2_mids_info"> <a href="https://www.php.cn/ja/ai/ai-clothes-remover" title="AI Clothes Remover" class="phpmain_tab2_mids_title"> <h3>AI Clothes Remover</h3> </a> <p>写真から衣服を削除するオンライン AI ツール。</p> </div> </div> <div class="phpmain_tab2_mids_top"> <a href="https://www.php.cn/ja/ai/undress-ai-tool" title="Undress AI Tool" class="phpmain_tab2_mids_top_img"> <img onerror="this.onerror=''; this.src='/static/imghw/default1.png'" onerror="this.onerror=''; this.src='/static/imghw/default1.png'" class="lazy" data-src="https://img.php.cn/upload/ai_manual/001/246/273/173410641626608.jpg?x-oss-process=image/resize,m_fill,h_50,w_50" src="/static/imghw/default1.png" alt="Undress AI Tool" /> </a> <div class="phpmain_tab2_mids_info"> <a href="https://www.php.cn/ja/ai/undress-ai-tool" title="Undress AI Tool" class="phpmain_tab2_mids_title"> <h3>Undress AI Tool</h3> </a> <p>脱衣画像を無料で</p> </div> </div> <div class="phpmain_tab2_mids_top"> <a href="https://www.php.cn/ja/ai/clothoffio" title="Clothoff.io" class="phpmain_tab2_mids_top_img"> <img onerror="this.onerror=''; this.src='/static/imghw/default1.png'" onerror="this.onerror=''; this.src='/static/imghw/default1.png'" class="lazy" data-src="https://img.php.cn/upload/ai_manual/001/246/273/173411529149311.jpg?x-oss-process=image/resize,m_fill,h_50,w_50" src="/static/imghw/default1.png" alt="Clothoff.io" /> </a> <div class="phpmain_tab2_mids_info"> <a href="https://www.php.cn/ja/ai/clothoffio" title="Clothoff.io" class="phpmain_tab2_mids_title"> <h3>Clothoff.io</h3> </a> <p>AI衣類リムーバー</p> </div> </div> <div class="phpmain_tab2_mids_top"> <a href="https://www.php.cn/ja/ai/ai-hentai-generator" title="AI Hentai Generator" class="phpmain_tab2_mids_top_img"> <img onerror="this.onerror=''; this.src='/static/imghw/default1.png'" onerror="this.onerror=''; this.src='/static/imghw/default1.png'" class="lazy" data-src="https://img.php.cn/upload/ai_manual/001/246/273/173405034393877.jpg?x-oss-process=image/resize,m_fill,h_50,w_50" src="/static/imghw/default1.png" alt="AI Hentai Generator" /> </a> <div class="phpmain_tab2_mids_info"> <a href="https://www.php.cn/ja/ai/ai-hentai-generator" title="AI Hentai Generator" class="phpmain_tab2_mids_title"> <h3>AI Hentai Generator</h3> </a> <p>AIヘンタイを無料で生成します。</p> </div> </div> </div> <div class="phpgenera_Details_mainR3_more"> <a href="https://www.php.cn/ja/ai">もっと見る</a> </div> </div> </div> <script src="https://sw.php.cn/hezuo/cac1399ab368127f9b113b14eb3316d0.js" type="text/javascript"></script> <div class="phpgenera_Details_mainR4"> <div class="phpmain1_4R_readrank"> <div class="phpmain1_4R_readrank_top"> <img onerror="this.onerror=''; this.src='/static/imghw/default1.png'" onerror="this.onerror=''; this.src='/static/imghw/default1.png'" src="/static/imghw/hotarticle2.png" alt="" /> <h2>人気の記事</h2> </div> <div class="phpgenera_Details_mainR4_bottom"> <div class="phpgenera_Details_mainR4_bottoms"> <a href="https://www.php.cn/ja/faq/1796780570.html" title="R.E.P.O.説明されたエネルギー結晶と彼らが何をするか(黄色のクリスタル)" class="phpgenera_Details_mainR4_bottom_title">R.E.P.O.説明されたエネルギー結晶と彼らが何をするか(黄色のクリスタル)</a> <div class="phpgenera_Details_mainR4_bottoms_info"> <span>3週間前</span> <span>By 尊渡假赌尊渡假赌尊渡假赌</span> </div> </div> <div class="phpgenera_Details_mainR4_bottoms"> <a href="https://www.php.cn/ja/faq/1796780641.html" title="R.E.P.O.最高のグラフィック設定" class="phpgenera_Details_mainR4_bottom_title">R.E.P.O.最高のグラフィック設定</a> <div class="phpgenera_Details_mainR4_bottoms_info"> <span>3週間前</span> <span>By 尊渡假赌尊渡假赌尊渡假赌</span> </div> </div> <div class="phpgenera_Details_mainR4_bottoms"> <a href="https://www.php.cn/ja/faq/1796785841.html" title="アサシンのクリードシャドウズ:シーシェルリドルソリューション" class="phpgenera_Details_mainR4_bottom_title">アサシンのクリードシャドウズ:シーシェルリドルソリューション</a> <div class="phpgenera_Details_mainR4_bottoms_info"> <span>2週間前</span> <span>By DDD</span> </div> </div> <div class="phpgenera_Details_mainR4_bottoms"> <a href="https://www.php.cn/ja/faq/1796780520.html" title="R.E.P.O.誰も聞こえない場合はオーディオを修正する方法" class="phpgenera_Details_mainR4_bottom_title">R.E.P.O.誰も聞こえない場合はオーディオを修正する方法</a> <div class="phpgenera_Details_mainR4_bottoms_info"> <span>3週間前</span> <span>By 尊渡假赌尊渡假赌尊渡假赌</span> </div> </div> <div class="phpgenera_Details_mainR4_bottoms"> <a href="https://www.php.cn/ja/faq/1796779766.html" title="WWE 2K25:Myriseのすべてのロックを解除する方法" class="phpgenera_Details_mainR4_bottom_title">WWE 2K25:Myriseのすべてのロックを解除する方法</a> <div class="phpgenera_Details_mainR4_bottoms_info"> <span>3週間前</span> <span>By 尊渡假赌尊渡假赌尊渡假赌</span> </div> </div> </div> <div class="phpgenera_Details_mainR3_more"> <a href="https://www.php.cn/ja/article.html">もっと見る</a> </div> </div> </div> <div class="phpgenera_Details_mainR3"> <div class="phpmain1_4R_readrank"> <div class="phpmain1_4R_readrank_top"> <img onerror="this.onerror=''; this.src='/static/imghw/default1.png'" onerror="this.onerror=''; this.src='/static/imghw/default1.png'" src="/static/imghw/hottools2.png" alt="" /> <h2>ホットツール</h2> </div> <div class="phpgenera_Details_mainR3_bottom"> <div class="phpmain_tab2_mids_top"> <a href="https://www.php.cn/ja/toolset/development-tools/92" title="メモ帳++7.3.1" class="phpmain_tab2_mids_top_img"> <img onerror="this.onerror=''; this.src='/static/imghw/default1.png'" onerror="this.onerror=''; this.src='/static/imghw/default1.png'" class="lazy" data-src="https://img.php.cn/upload/manual/000/000/001/58ab96f0f39f7357.jpg?x-oss-process=image/resize,m_fill,h_50,w_72" src="/static/imghw/default1.png" alt="メモ帳++7.3.1" /> </a> <div class="phpmain_tab2_mids_info"> <a href="https://www.php.cn/ja/toolset/development-tools/92" title="メモ帳++7.3.1" class="phpmain_tab2_mids_title"> <h3>メモ帳++7.3.1</h3> </a> <p>使いやすく無料のコードエディター</p> </div> </div> <div class="phpmain_tab2_mids_top"> <a href="https://www.php.cn/ja/toolset/development-tools/93" title="SublimeText3 中国語版" class="phpmain_tab2_mids_top_img"> <img onerror="this.onerror=''; this.src='/static/imghw/default1.png'" onerror="this.onerror=''; this.src='/static/imghw/default1.png'" class="lazy" data-src="https://img.php.cn/upload/manual/000/000/001/58ab97a3baad9677.jpg?x-oss-process=image/resize,m_fill,h_50,w_72" src="/static/imghw/default1.png" alt="SublimeText3 中国語版" /> </a> <div class="phpmain_tab2_mids_info"> <a href="https://www.php.cn/ja/toolset/development-tools/93" title="SublimeText3 中国語版" class="phpmain_tab2_mids_title"> <h3>SublimeText3 中国語版</h3> </a> <p>中国語版、とても使いやすい</p> </div> </div> <div class="phpmain_tab2_mids_top"> <a href="https://www.php.cn/ja/toolset/development-tools/121" title="ゼンドスタジオ 13.0.1" class="phpmain_tab2_mids_top_img"> <img onerror="this.onerror=''; this.src='/static/imghw/default1.png'" onerror="this.onerror=''; this.src='/static/imghw/default1.png'" class="lazy" data-src="https://img.php.cn/upload/manual/000/000/001/58ab97ecd1ab2670.jpg?x-oss-process=image/resize,m_fill,h_50,w_72" src="/static/imghw/default1.png" alt="ゼンドスタジオ 13.0.1" /> </a> <div class="phpmain_tab2_mids_info"> <a href="https://www.php.cn/ja/toolset/development-tools/121" title="ゼンドスタジオ 13.0.1" class="phpmain_tab2_mids_title"> <h3>ゼンドスタジオ 13.0.1</h3> </a> <p>強力な PHP 統合開発環境</p> </div> </div> <div class="phpmain_tab2_mids_top"> <a href="https://www.php.cn/ja/toolset/development-tools/469" title="ドリームウィーバー CS6" class="phpmain_tab2_mids_top_img"> <img onerror="this.onerror=''; this.src='/static/imghw/default1.png'" onerror="this.onerror=''; this.src='/static/imghw/default1.png'" class="lazy" data-src="https://img.php.cn/upload/manual/000/000/001/58d0e0fc74683535.jpg?x-oss-process=image/resize,m_fill,h_50,w_72" src="/static/imghw/default1.png" alt="ドリームウィーバー CS6" /> </a> <div class="phpmain_tab2_mids_info"> <a href="https://www.php.cn/ja/toolset/development-tools/469" title="ドリームウィーバー CS6" class="phpmain_tab2_mids_title"> <h3>ドリームウィーバー CS6</h3> </a> <p>ビジュアル Web 開発ツール</p> </div> </div> <div class="phpmain_tab2_mids_top"> <a href="https://www.php.cn/ja/toolset/development-tools/500" title="SublimeText3 Mac版" class="phpmain_tab2_mids_top_img"> <img onerror="this.onerror=''; this.src='/static/imghw/default1.png'" onerror="this.onerror=''; this.src='/static/imghw/default1.png'" class="lazy" data-src="https://img.php.cn/upload/manual/000/000/001/58d34035e2757995.png?x-oss-process=image/resize,m_fill,h_50,w_72" src="/static/imghw/default1.png" alt="SublimeText3 Mac版" /> </a> <div class="phpmain_tab2_mids_info"> <a href="https://www.php.cn/ja/toolset/development-tools/500" title="SublimeText3 Mac版" class="phpmain_tab2_mids_title"> <h3>SublimeText3 Mac版</h3> </a> <p>神レベルのコード編集ソフト(SublimeText3)</p> </div> </div> </div> <div class="phpgenera_Details_mainR3_more"> <a href="https://www.php.cn/ja/ai">もっと見る</a> </div> </div> </div> <div class="phpgenera_Details_mainR4"> <div class="phpmain1_4R_readrank"> <div class="phpmain1_4R_readrank_top"> <img onerror="this.onerror=''; this.src='/static/imghw/default1.png'" onerror="this.onerror=''; this.src='/static/imghw/default1.png'" src="/static/imghw/hotarticle2.png" alt="" /> <h2>ホットトピック</h2> </div> <div class="phpgenera_Details_mainR4_bottom"> <div class="phpgenera_Details_mainR4_bottoms"> <a href="https://www.php.cn/ja/faq/gmailyxdlrkzn" title="Gmailメールのログイン入り口はどこですか?" class="phpgenera_Details_mainR4_bottom_title">Gmailメールのログイン入り口はどこですか?</a> <div class="phpgenera_Details_mainR4_bottoms_info"> <div class="phpgenera_Details_mainR4_bottoms_infos"> <img src="/static/imghw/eyess.png" alt="" /> <span>7467</span> </div> <div class="phpgenera_Details_mainR4_bottoms_infos"> <img src="/static/imghw/tiezi.png" alt="" /> <span>15</span> </div> </div> </div> <div class="phpgenera_Details_mainR4_bottoms"> <a href="https://www.php.cn/ja/faq/cakephp-tutor" title="CakePHP チュートリアル" class="phpgenera_Details_mainR4_bottom_title">CakePHP チュートリアル</a> <div class="phpgenera_Details_mainR4_bottoms_info"> <div class="phpgenera_Details_mainR4_bottoms_infos"> <img src="/static/imghw/eyess.png" alt="" /> <span>1376</span> </div> <div class="phpgenera_Details_mainR4_bottoms_infos"> <img src="/static/imghw/tiezi.png" alt="" /> <span>52</span> </div> </div> </div> <div class="phpgenera_Details_mainR4_bottoms"> <a href="https://www.php.cn/ja/faq/steamdzhmcssmgs" title="Steamのアカウント名の形式は何ですか" class="phpgenera_Details_mainR4_bottom_title">Steamのアカウント名の形式は何ですか</a> <div class="phpgenera_Details_mainR4_bottoms_info"> <div class="phpgenera_Details_mainR4_bottoms_infos"> <img src="/static/imghw/eyess.png" alt="" /> <span>77</span> </div> <div class="phpgenera_Details_mainR4_bottoms_infos"> <img src="/static/imghw/tiezi.png" alt="" /> <span>11</span> </div> </div> </div> <div class="phpgenera_Details_mainR4_bottoms"> <a href="https://www.php.cn/ja/faq/winactivationkeyper" title="Win11 Activation Key Permanent" class="phpgenera_Details_mainR4_bottom_title">Win11 Activation Key Permanent</a> <div class="phpgenera_Details_mainR4_bottoms_info"> <div class="phpgenera_Details_mainR4_bottoms_infos"> <img src="/static/imghw/eyess.png" alt="" /> <span>48</span> </div> <div class="phpgenera_Details_mainR4_bottoms_infos"> <img src="/static/imghw/tiezi.png" alt="" /> <span>19</span> </div> </div> </div> <div class="phpgenera_Details_mainR4_bottoms"> <a href="https://www.php.cn/ja/faq/newyorktimesdailybrief" title="NYTの接続はヒントと回答です" class="phpgenera_Details_mainR4_bottom_title">NYTの接続はヒントと回答です</a> <div class="phpgenera_Details_mainR4_bottoms_info"> <div class="phpgenera_Details_mainR4_bottoms_infos"> <img src="/static/imghw/eyess.png" alt="" /> <span>19</span> </div> <div class="phpgenera_Details_mainR4_bottoms_infos"> <img src="/static/imghw/tiezi.png" alt="" /> <span>22</span> </div> </div> </div> </div> <div class="phpgenera_Details_mainR3_more"> <a href="https://www.php.cn/ja/faq/zt">もっと見る</a> </div> </div> </div> </div> </div> <div class="Article_Details_main2"> <div class="phpgenera_Details_mainL4"> <div class="phpmain1_2_top"> <a href="javascript:void(0);" class="phpmain1_2_top_title">Related knowledge<img src="/static/imghw/index2_title2.png" alt="" /></a> </div> <div class="phpgenera_Details_mainL4_info"> <div class="phphistorical_Version2_mids"> <a href="https://www.php.cn/ja/faq/1796733273.html" title="Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド" class="phphistorical_Version2_mids_img"> <img onerror="this.onerror=''; this.src='/static/imghw/default1.png'" src="/static/imghw/default1.png" class="lazy" data-src="https://img.php.cn/upload/article/000/000/080/676a727698393240.png?x-oss-process=image/resize,m_fill,h_207,w_330" alt="Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド" /> </a> <a href="https://www.php.cn/ja/faq/1796733273.html" title="Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド" class="phphistorical_Version2_mids_title">Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド</a> <span class="Articlelist_txts_time">Dec 24, 2024 pm 04:42 PM</span> <p class="Articlelist_txts_p">PHP 8.4 では、いくつかの新機能、セキュリティの改善、パフォーマンスの改善が行われ、かなりの量の機能の非推奨と削除が行われています。 このガイドでは、Ubuntu、Debian、またはその派生版に PHP 8.4 をインストールする方法、または PHP 8.4 にアップグレードする方法について説明します。</p> </div> <div class="phphistorical_Version2_mids"> <a href="https://www.php.cn/ja/faq/1796604998.html" title="CakePHP の日付と時刻" class="phphistorical_Version2_mids_img"> <img onerror="this.onerror=''; this.src='/static/imghw/default1.png'" src="/static/imghw/default1.png" class="lazy" data-src="https://img.php.cn/upload/article/000/887/227/172596042710877.jpg?x-oss-process=image/resize,m_fill,h_207,w_330" alt="CakePHP の日付と時刻" /> </a> <a href="https://www.php.cn/ja/faq/1796604998.html" title="CakePHP の日付と時刻" class="phphistorical_Version2_mids_title">CakePHP の日付と時刻</a> <span class="Articlelist_txts_time">Sep 10, 2024 pm 05:27 PM</span> <p class="Articlelist_txts_p">Cakephp4 で日付と時刻を操作するには、利用可能な FrozenTime クラスを利用します。</p> </div> <div class="phphistorical_Version2_mids"> <a href="https://www.php.cn/ja/faq/1796605002.html" title="CakePHP について話し合う" class="phphistorical_Version2_mids_img"> <img onerror="this.onerror=''; this.src='/static/imghw/default1.png'" src="/static/imghw/default1.png" class="lazy" data-src="https://img.php.cn/upload/article/202409/10/2024091017281739989.jpg?x-oss-process=image/resize,m_fill,h_207,w_330" alt="CakePHP について話し合う" /> </a> <a href="https://www.php.cn/ja/faq/1796605002.html" title="CakePHP について話し合う" class="phphistorical_Version2_mids_title">CakePHP について話し合う</a> <span class="Articlelist_txts_time">Sep 10, 2024 pm 05:28 PM</span> <p class="Articlelist_txts_p">CakePHP は、PHP 用のオープンソース フレームワークです。これは、アプリケーションの開発、展開、保守をより簡単にすることを目的としています。 CakePHP は、強力かつ理解しやすい MVC のようなアーキテクチャに基づいています。モデル、ビュー、コントローラー</p> </div> <div class="phphistorical_Version2_mids"> <a href="https://www.php.cn/ja/faq/1796604999.html" title="CakePHP ファイルのアップロード" class="phphistorical_Version2_mids_img"> <img onerror="this.onerror=''; this.src='/static/imghw/default1.png'" src="/static/imghw/default1.png" class="lazy" data-src="https://img.php.cn/upload/article/000/000/164/172596043255110.jpg?x-oss-process=image/resize,m_fill,h_207,w_330" alt="CakePHP ファイルのアップロード" /> </a> <a href="https://www.php.cn/ja/faq/1796604999.html" title="CakePHP ファイルのアップロード" class="phphistorical_Version2_mids_title">CakePHP ファイルのアップロード</a> <span class="Articlelist_txts_time">Sep 10, 2024 pm 05:27 PM</span> <p class="Articlelist_txts_p">ファイルのアップロードを行うには、フォーム ヘルパーを使用します。ここではファイルアップロードの例を示します。</p> </div> <div class="phphistorical_Version2_mids"> <a href="https://www.php.cn/ja/faq/1796604997.html" title="CakePHP バリデータの作成" class="phphistorical_Version2_mids_img"> <img onerror="this.onerror=''; this.src='/static/imghw/default1.png'" src="/static/imghw/default1.png" class="lazy" data-src="https://img.php.cn/upload/article/000/000/164/172596041825531.jpg?x-oss-process=image/resize,m_fill,h_207,w_330" alt="CakePHP バリデータの作成" /> </a> <a href="https://www.php.cn/ja/faq/1796604997.html" title="CakePHP バリデータの作成" class="phphistorical_Version2_mids_title">CakePHP バリデータの作成</a> <span class="Articlelist_txts_time">Sep 10, 2024 pm 05:26 PM</span> <p class="Articlelist_txts_p">Validator は、コントローラーに次の 2 行を追加することで作成できます。</p> </div> <div class="phphistorical_Version2_mids"> <a href="https://www.php.cn/ja/faq/1796604990.html" title="CakePHP のロギング" class="phphistorical_Version2_mids_img"> <img onerror="this.onerror=''; this.src='/static/imghw/default1.png'" src="/static/imghw/default1.png" class="lazy" data-src="https://img.php.cn/upload/article/000/465/014/172596037751490.jpg?x-oss-process=image/resize,m_fill,h_207,w_330" alt="CakePHP のロギング" /> </a> <a href="https://www.php.cn/ja/faq/1796604990.html" title="CakePHP のロギング" class="phphistorical_Version2_mids_title">CakePHP のロギング</a> <span class="Articlelist_txts_time">Sep 10, 2024 pm 05:26 PM</span> <p class="Articlelist_txts_p">CakePHP へのログインは非常に簡単な作業です。使用する関数は 1 つだけです。 cronjob などのバックグラウンド プロセスのエラー、例外、ユーザー アクティビティ、ユーザーが実行したアクションをログに記録できます。 CakePHP でのデータのログ記録は簡単です。 log()関数が提供されています</p> </div> <div class="phphistorical_Version2_mids"> <a href="https://www.php.cn/ja/faq/1796728164.html" title="PHP 開発用に Visual Studio Code (VS Code) をセットアップする方法" class="phphistorical_Version2_mids_img"> <img onerror="this.onerror=''; this.src='/static/imghw/default1.png'" src="/static/imghw/default1.png" class="lazy" data-src="https://img.php.cn/upload/article/000/000/080/6764e39e44ffe544.png?x-oss-process=image/resize,m_fill,h_207,w_330" alt="PHP 開発用に Visual Studio Code (VS Code) をセットアップする方法" /> </a> <a href="https://www.php.cn/ja/faq/1796728164.html" title="PHP 開発用に Visual Studio Code (VS Code) をセットアップする方法" class="phphistorical_Version2_mids_title">PHP 開発用に Visual Studio Code (VS Code) をセットアップする方法</a> <span class="Articlelist_txts_time">Dec 20, 2024 am 11:31 AM</span> <p class="Articlelist_txts_p">Visual Studio Code (VS Code とも呼ばれる) は、すべての主要なオペレーティング システムで利用できる無料のソース コード エディター (統合開発環境 (IDE)) です。 多くのプログラミング言語の拡張機能の大規模なコレクションを備えた VS Code は、</p> </div> <div class="phphistorical_Version2_mids"> <a href="https://www.php.cn/ja/faq/1796605003.html" title="CakePHP クイックガイド" class="phphistorical_Version2_mids_img"> <img onerror="this.onerror=''; this.src='/static/imghw/default1.png'" src="/static/imghw/default1.png" class="lazy" data-src="https://img.php.cn/upload/article/000/887/227/172596043773435.jpg?x-oss-process=image/resize,m_fill,h_207,w_330" alt="CakePHP クイックガイド" /> </a> <a href="https://www.php.cn/ja/faq/1796605003.html" title="CakePHP クイックガイド" class="phphistorical_Version2_mids_title">CakePHP クイックガイド</a> <span class="Articlelist_txts_time">Sep 10, 2024 pm 05:27 PM</span> <p class="Articlelist_txts_p">CakePHP はオープンソースの MVC フレームワークです。これにより、アプリケーションの開発、展開、保守がはるかに簡単になります。 CakePHP には、最も一般的なタスクの過負荷を軽減するためのライブラリが多数あります。</p> </div> </div> <a href="https://www.php.cn/ja/php-tutorials.html" class="phpgenera_Details_mainL4_botton"> <span>See all articles</span> <img src="/static/imghw/down_right.png" alt="" /> </a> </div> </div> </div> </main> <footer> <div class="footer"> <div class="footertop"> <img src="/static/imghw/logo.png" alt=""> <p>福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!</p> </div> <div class="footermid"> <a href="https://www.php.cn/ja/about/us.html">私たちについて</a> <a href="https://www.php.cn/ja/about/disclaimer.html">免責事項</a> <a href="https://www.php.cn/ja/update/article_0_1.html">Sitemap</a> </div> <div class="footerbottom"> <p> © php.cn All rights reserved </p> </div> </div> </footer> <input type="hidden" id="verifycode" value="/captcha.html"> <script>layui.use(['element', 'carousel'], function () {var element = layui.element;$ = layui.jquery;var carousel = layui.carousel;carousel.render({elem: '#test1', width: '100%', height: '330px', arrow: 'always'});$.getScript('/static/js/jquery.lazyload.min.js', function () {$("img").lazyload({placeholder: "/static/images/load.jpg", effect: "fadeIn", threshold: 200, skip_invisible: false});});});</script> <script src="/static/js/common_new.js"></script> <script type="text/javascript" src="/static/js/jquery.cookie.js?1744424920"></script> <script src="https://vdse.bdstatic.com//search-video.v1.min.js"></script> <link rel='stylesheet' id='_main-css' href='/static/css/viewer.min.css?2' type='text/css' media='all' /> <script type='text/javascript' src='/static/js/viewer.min.js?1'></script> <script type='text/javascript' src='/static/js/jquery-viewer.min.js'></script> <script type="text/javascript" src="/static/js/global.min.js?5.5.53"></script> <script> var _paq = window._paq = window._paq || []; /* tracker methods like "setCustomDimension" should be called before "trackPageView" */ _paq.push(['trackPageView']); _paq.push(['enableLinkTracking']); (function () { var u = "https://tongji.php.cn/"; _paq.push(['setTrackerUrl', u + 'matomo.php']); _paq.push(['setSiteId', '9']); var d = document, g = d.createElement('script'), s = d.getElementsByTagName('script')[0]; g.async = true; g.src = u + 'matomo.js'; s.parentNode.insertBefore(g, s); })(); </script> <script> // top layui.use(function () { var util = layui.util; util.fixbar({ on: { mouseenter: function (type) { layer.tips(type, this, { tips: 4, fixed: true, }); }, mouseleave: function (type) { layer.closeAll("tips"); }, }, }); }); document.addEventListener("DOMContentLoaded", (event) => { // 定义一个函数来处理滚动链接的点击事件 function setupScrollLink(scrollLinkId, targetElementId) { const scrollLink = document.getElementById(scrollLinkId); const targetElement = document.getElementById(targetElementId); if (scrollLink && targetElement) { scrollLink.addEventListener("click", (e) => { e.preventDefault(); // 阻止默认链接行为 targetElement.scrollIntoView({ behavior: "smooth" }); // 平滑滚动到目标元素 }); } else { console.warn( `Either scroll link with ID '${scrollLinkId}' or target element with ID '${targetElementId}' not found.` ); } } // 使用该函数设置多个滚动链接 setupScrollLink("Article_Details_main1L2s_1", "article_main_title1"); setupScrollLink("Article_Details_main1L2s_2", "article_main_title2"); setupScrollLink("Article_Details_main1L2s_3", "article_main_title3"); setupScrollLink("Article_Details_main1L2s_4", "article_main_title4"); setupScrollLink("Article_Details_main1L2s_5", "article_main_title5"); setupScrollLink("Article_Details_main1L2s_6", "article_main_title6"); // 可以继续添加更多的滚动链接设置 }); window.addEventListener("scroll", function () { var fixedElement = document.getElementById("Article_Details_main1Lmain"); var scrollTop = window.scrollY || document.documentElement.scrollTop; // 兼容不同浏览器 var clientHeight = window.innerHeight || document.documentElement.clientHeight; // 视口高度 var scrollHeight = document.documentElement.scrollHeight; // 页面总高度 // 计算距离底部的距离 var distanceToBottom = scrollHeight - scrollTop - clientHeight; // 当距离底部小于或等于300px时,取消固定定位 if (distanceToBottom <= 980) { fixedElement.classList.remove("Article_Details_main1Lmain"); fixedElement.classList.add("Article_Details_main1Lmain_relative"); } else { // 否则,保持固定定位 fixedElement.classList.remove("Article_Details_main1Lmain_relative"); fixedElement.classList.add("Article_Details_main1Lmain"); } }); </script> </body> </html>