ホームページ  >  記事  >  バックエンド開発  >  php+mcDropdown を使用して、ドロップダウン ボックスでファイル パスを選択できることを確認します_PHP チュートリアル

php+mcDropdown を使用して、ドロップダウン ボックスでファイル パスを選択できることを確認します_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-21 14:59:271391ブラウズ

最近、php を使用してファイル ディレクトリ情報を読み取り、インターネットで次のコードを入手しました:
//指定されたディレクトリ内のファイル リストを取得します
//$path はディレクトリを指定します。デフォルトは現在のディレクトリです。
//$ifchild が表示されるかどうか サブディレクトリのファイルリスト。デフォルトでは表示されません
//$curpath は、デフォルトでは現在のディレクトリから始まる現在のパスを表示します。これは主に href パスを表示して決定するためです

コード コードは次のとおりです:

関数 openpath($path=".",$ifchild=false,$curpath=".")
{

$handle = opendir($path);
if($handle)
{ while(false ! = =($ file = readdir($ handle)))
fullpath = $ path.directory_separator。$ file; ); echo "< li>< filen";
echo $file; ;
}


パス選択の機能を提供したいので、選択するパスを表示するドロップダウンメニューがある方が便利なので、自分で変更してパスを順序なしで出力しました。リスト。
以下は、現在のファイルの下にあるすべてのサブファイルのパスを取得するコードです:
コードをコピーします コードは次のとおりです:

/*指定されたディレクトリ内のファイルパスのリストを取得します
*$path はディレクトリを指定します。デフォルトは現在のディレクトリです
*$ifchild サブディレクトリのファイルリストを取得するかどうか、デフォルトでは取得されません
*$curpath は現在のパスを表示します、デフォルトは現在のディレクトリから開始します
* &$pach_html_srt このメソッドは再帰的に呼び出すことができるため、外部変数への参照を渡します。したがって、この方法で一部の情報を保存することは、関数内の変数の変更も外部に影響を与えることができます。
*&$path_ref_count 原理は上記と同じで、再帰的な場合、カウンタは最後に保存された値から増加します
*/
function openpath($path=".",$ifchild=false, &$path_html_str,&$ path_ref_count)
{
$handle = opendir($path);
if($handle)
{
while(false !== ($file = readdir($handle)))
{
if ($file != " "&& $ file! =" .. ")
{
$ fullpath = $ PATH.Directory_SEPARATOR. $ File; if (is_dir ($ fullpath)) // ;li rel="'.$ path_ref_count++.'">';
$path_html_str.=$file.'
    ';
    if($ifchild)
    {
    //Recursion
    openpath($path.DIRECTORY_SEPARATOR .$file,$ifchild,& $path_html_str,&$path_ref_count);
    ;
    }


    上記の方法では、フロント デスクで jquery mcDropdown プラグインを使用して、ユーザーがドロップダウンから入力するディレクトリを選択できるようにします。メニューなので、指定された形式にカプセル化する必要があります:



    コードをコピー

    コードは次のとおりです:

$path_ref_count = 1;
$path_html_str ='';
openpath(".",true,& $path_html_str,&$path_ref_count);
$path_html_str = '
    '.$path_html_str.'
';$path_html_str = str_replace ( "< ul>", '', $path_html_str );このように $ Path_html_str を入れるとフロントデスクに渡され、表示されるのは mcDropdown の要件を満たす順序なしリストと、それに対応する候補リストを表示することができます。
完全なコードは次のとおりです:

test.html




コードをコピーします

コードは次のとおりです:


< メタ charset="utf-8" /> test
css" href="./ css/jquery.mcdropdown.css" rel="stylesheet" media="all" />

< ;/head>


カテゴリを選択してください:



//ディレクトリ情報処理
$path_ref_count = 1;
$path_html_str ='';
openpath(".",true,&$path_html_str,&$path_ref_count);
$path_html_str = '< ul id="categorymenu" class="mcdropdown_menu">'.$path_html_str.'';
$path_html_str = str_replace ( "
    ", '', $path_html_str ) ;
    //var_dump($path_info);
    //var_dump($path_html_str);
    $str_buffer = file_get_contents (dirname(__FILE__).DIRECTORY_SEPARATOR.'test.html');
    $str_buffer = str_replace ( "#categorymenu#" , $path_html_str, $str_buffer );
    $str_buffer = str_replace ( "#delim#", DIRECTORY_SEPARATOR, $str_buffer );
    echo $str_buffer;
    /*指定されたディレクトリ内のファイルパスのリストを取得します
    *$path はディレクトリ、デフォルトは現在のディレクトリです
    *$ifchild サブディレクトリのファイルリストを取得するかどうか、デフォルトでは取得されません
    *$curpath 現在のパスを表示します、デフォルトは現在のディレクトリから開始します
    *&$pach_html_srt に参照を渡します外部変数。このメソッドは再帰呼び出しであるため、この方法で一部の情報を保存することは、関数内の変数の変更も外部に影響を与えます。
    *&$path_ref_count 原理は上記と同じで、再帰的な場合、カウンタは最後に保存された値から増加します
    */
    function openpath($path=".",$ifchild=false, &$path_html_str,&$ path_ref_count)
    {
    $handle = opendir($path);
    if($handle)
    {
    while(false !== ($file = readdir($handle)))
    {
    if ($file != " ." && $file != "..")
    ;li rel="'.$path_ref_count++.'">';
    $path_html_str.=$file.'
      ' ;
      if($ifchild)
      {
      //Recursion
      openpath($path.DIRECTORY_SEPARATOR .$file,$ifchild,&$path_html_str,&$path_ref_count);
      ;
      }
      ?>


      jquery mcDrオプダウンプラグインはここからダウンロードできます: http://www.givainc.com/labs/mcdropdown_jquery_plugin.htm



      http://www.bkjia.com/PHPjc/328137.html

      www.bkjia.com

      本当
    http://www.bkjia.com/PHPjc/328137.html
    技術記事

    最近、PHP を使用してファイル ディレクトリ情報を読み取り、インターネットで次のコードを入手しました。 //指定されたディレクトリ内のファイル リストを取得します。 //$path はディレクトリを指定します。デフォルトは現在のディレクトリです。 //$ifchildは...
    声明:
    この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。