ยินดีต้อนรับคุณ, บุคคลทั่วไป กรุณา เข้าสู่ระบบ หรือ ลงทะเบียน

เข้าสู่ระบบด้วยชื่อผู้ใช้ รหัสผ่าน และระยะเวลาในเซสชั่น

หน้า: [1]   ลงล่าง
พิมพ์
ผู้เขียน หัวข้อ: ช่วยเขียน Code ไล่ a-z และ 0 ถึง 9 หน่อยครับ  (อ่าน 1670 ครั้ง)
0 สมาชิก และ 1 บุคคลทั่วไป กำลังดูหัวข้อนี้
guy852
เจ้าพ่อบอร์ดเสียว
*

พลังน้ำใจ: 28
ออฟไลน์ ออฟไลน์

กระทู้: 3,090



ดูรายละเอียด
« เมื่อ: 05 มกราคม 2009, 09:16:35 »

ช่วยเขียน Scripts ที่ไล่ a ถึง z และ 0-9 หน่อยครับจะเอาไปสร้าง Directory

คือว่าจะทำแบบนี้ครับ

สมมุติว่าผู้ใช้ชื่อ Asanee ก็จะปรีบเป็น lower case asanee และดึง 4 ตัวแรกมา

a
s
a
n

ก็จะเริ่มเข้า Directory ที่หนึ่ง
a-
เข้าต่อ
a-s-
เข้าอีก
a-s-a-
เข้าครั้งสุดท้าย
a-s-a-n

ซึ่งหมายความว่าถ้าผมจะทำแบบนี้ต้องใช้
(35กำลัง3)x 35 ครับ

ไม่หวครับ ขอ Scripts ด่วน
บันทึกการเข้า
ColdMoney
เจ้าพ่อบอร์ดเสียว
*

พลังน้ำใจ: 200
ออฟไลน์ ออฟไลน์

กระทู้: 12,622



ดูรายละเอียด เว็บไซต์
« ตอบ #1 เมื่อ: 05 มกราคม 2009, 09:37:25 »

จัดไป  Smiley

โค๊ด:
<?
function gen_folder_name($keyword){
$char_length=4;
$base_path="./my_base_path/";

$no_space_keyword=strtolower(ereg_replace("[^a-zA-Z0-9]", "",$keyword));
$keyword_length=strlen($no_space_keyword);
if($keyword_length>$char_length){ $keyword_length=$char_length; }

for($i=0;$i<$keyword_length;$i++){
$base_path=$base_path.$no_space_keyword{$i}."/";
}

if (!file_exists($base_path)) {  //ถ้าไม่มี folder ก็จะสร้างให้อัตโนมัติ
mkdir($base_path, 0777, true);
}

return $base_path;
}

//=== Main start here
$test_keyword="Asanee";
echo gen_folder_name($test_keyword);
?>

บันทึกการเข้า

guy852
เจ้าพ่อบอร์ดเสียว
*

พลังน้ำใจ: 28
ออฟไลน์ ออฟไลน์

กระทู้: 3,090



ดูรายละเอียด
« ตอบ #2 เมื่อ: 05 มกราคม 2009, 09:36:50 »

 Cry ขอบคุณครับพอดีผมกำลังหัดใช้ PHP อยู่

ปล.พี่ Coldmoney เขียนเร็วมากๆ
บันทึกการเข้า
guy852
เจ้าพ่อบอร์ดเสียว
*

พลังน้ำใจ: 28
ออฟไลน์ ออฟไลน์

กระทู้: 3,090



ดูรายละเอียด
« ตอบ #3 เมื่อ: 05 มกราคม 2009, 17:58:13 »

จ้องๆ ไปแล้วรู้สึกจะไม่ใช่แบบที่ผมต้องการฮะ

คือว่าที่ผมต้องการคือ (ขออภัยคุณ Coldmoney ครับ)
-สร้าง Dir A-Z0-9
-ใน Dir A-z0-9 ก็จะมี A-z0-9 อีกแนะมาณ 4 ชั้น แบบนี้ครับ



ผมจะใช้เก็บ Avatar User ครับ แต่พึ่งรู้ว่าการทำ Folder แยกแบนี้จะเร็วกว่า
บันทึกการเข้า
icez
Verified Seller
หัวหน้าแก๊งเสียว
*

พลังน้ำใจ: 296
ออฟไลน์ ออฟไลน์

กระทู้: 2,887



ดูรายละเอียด
« ตอบ #4 เมื่อ: 05 มกราคม 2009, 18:04:18 »

ไปสั่งใน shell นะครับ

mkdir -p {0..9}/{0..9}/{0..9}/{0..9}
mkdir -p {0..9}/{0..9}/{0..9}/{a..z}
mkdir -p {0..9}/{0..9}/{a..z}/{a..z}
mkdir -p {0..9}/{a..z}/{a..z}/{a..z}
mkdir -p {a..z}/{a..z}/{a..z}/{a..z}
mkdir -p {a..z}/{0..9}/{0..9}/{0..9}
mkdir -p {a..z}/{0..9}/{0..9}/{a..z}
mkdir -p {a..z}/{0..9}/{a..z}/{a..z}
mkdir -p {a..z}/{a..z}/{0..9}/{0..9}
mkdir -p {a..z}/{a..z}/{0..9}/{a..z}
mkdir -p {a..z}/{a..z}/{a..z}/{0..9}



เอ ครบแล้วยังหว่า
บันทึกการเข้า

THZHost SSD Hosting ไทย/สิงคโปร์ พร้อม firewall ป้องกันการยิงเว็บ + scan ไวรัสในเว็บ
แอร๊ยยยๆๆๆ
หัวหน้าแก๊งเสียว
*

พลังน้ำใจ: 50
ออฟไลน์ ออฟไลน์

กระทู้: 2,765



ดูรายละเอียด เว็บไซต์
« ตอบ #5 เมื่อ: 05 มกราคม 2009, 18:06:28 »

ไปสั่งใน shell นะครับ

mkdir -p {0..9}/{0..9}/{0..9}/{0..9}
mkdir -p {0..9}/{0..9}/{0..9}/{a..z}
mkdir -p {0..9}/{0..9}/{a..z}/{a..z}
mkdir -p {0..9}/{a..z}/{a..z}/{a..z}
mkdir -p {a..z}/{a..z}/{a..z}/{a..z}
mkdir -p {a..z}/{0..9}/{0..9}/{0..9}
mkdir -p {a..z}/{0..9}/{0..9}/{a..z}
mkdir -p {a..z}/{0..9}/{a..z}/{a..z}
mkdir -p {a..z}/{a..z}/{0..9}/{0..9}
mkdir -p {a..z}/{a..z}/{0..9}/{a..z}
mkdir -p {a..z}/{a..z}/{a..z}/{0..9}



เอ ครบแล้วยังหว่า

โอ้ว จากยากกลายเป็นง่ายไปเลย
บันทึกการเข้า

EThaiZone
เจ้าพ่อโลลิค่อน
เจ้าพ่อบอร์ดเสียว
*

พลังน้ำใจ: 321
ออฟไลน์ ออฟไลน์

กระทู้: 12,518



ดูรายละเอียด เว็บไซต์
« ตอบ #6 เมื่อ: 05 มกราคม 2009, 18:35:54 »

โค๊ด:
function build_folder($sub_amount, $path_now="", $deep_now=1){

if($sub_amount < $deep_now) return false;

$char = array_merge(range("a", "z"), range("0", "9"));

$deep_now++;
foreach($char as $var) {
$path = ($path_now ? $path_now."/" : "").$var;
if (!file_exists($path)) mkdir($path, 0777, true);
build_folder($sub_amount, $path, $deep_now);
}

return true;
}

build_folder(4); //จำนวนความลึกกี่ชั้น

แบบ php  Tongue
บันทึกการเข้า

alert
Verified Seller
หัวหน้าแก๊งเสียว
*

พลังน้ำใจ: 50
ออฟไลน์ ออฟไลน์

กระทู้: 1,741



ดูรายละเอียด
« ตอบ #7 เมื่อ: 05 มกราคม 2009, 19:29:28 »

โค๊ด:
function build_folder($sub_amount, $path_now="", $deep_now=1){

if($sub_amount < $deep_now) return false;

$char = array_merge(range("a", "z"), range("0", "9"));

$deep_now++;
foreach($char as $var) {
$path = ($path_now ? $path_now."/" : "").$var;
if (!file_exists($path)) mkdir($path, 0777, true);
build_folder($sub_amount, $path, $deep_now);
}

return true;
}

build_folder(4); //จำนวนความลึกกี่ชั้น

แบบ php  Tongue
กะลังจะ post เลย โดนแย่งซะก่อน เอาตามนี้ละกัน
บันทึกการเข้า

***** รับซื้อเว็บไซต์สายขาวคุณภาพ  ตั้งแต่ 500-30,000 uip มี traffic มาจาก Google  และไม่เคยโดนแบน adsense  เสนอราคามาทาง pm ได้เลยครับ *****
xmen256k
หัวหน้าแก๊งเสียว
*

พลังน้ำใจ: 98
ออฟไลน์ ออฟไลน์

กระทู้: 1,999



ดูรายละเอียด
« ตอบ #8 เมื่อ: 05 มกราคม 2009, 19:39:03 »

ยังกับเรียนเลขในห้องเลย ความน่าจะเป็นใช่มั๊ยเนี้ย ลักษณะคล้ายๆเลย -*-
บันทึกการเข้า
SvZ
คนรักเสียว
*

พลังน้ำใจ: 28
ออฟไลน์ ออฟไลน์

กระทู้: 163



ดูรายละเอียด เว็บไซต์
« ตอบ #9 เมื่อ: 05 มกราคม 2009, 19:48:59 »

ค่อยสร้างตอนอัพรูปไปไว้ไม่ดีกว่าหรอครับ?
ทำไมต้องสร้างโฟลเดอร์เปล่า ๆ รอด้วย
บันทึกการเข้า

EThaiZone
เจ้าพ่อโลลิค่อน
เจ้าพ่อบอร์ดเสียว
*

พลังน้ำใจ: 321
ออฟไลน์ ออฟไลน์

กระทู้: 12,518



ดูรายละเอียด เว็บไซต์
« ตอบ #10 เมื่อ: 05 มกราคม 2009, 20:39:21 »

ยังกับเรียนเลขในห้องเลย ความน่าจะเป็นใช่มั๊ยเนี้ย ลักษณะคล้ายๆเลย -*-
ถ้าความน่าจะเป็น ก็แนวนี้ครับ

โค๊ด:
function array_2D_permute($items, $perms = array( )) {
static $permuted_array;
    if (empty($items)) {
        $permuted_array[]=$perms;
        #print_r($new);
      #print join(' ', $perms) . "\n";
    }  else {
        for ($i = count($items) - 1; $i >= 0; --$i) {
             $newitems = $items;
             $newperms = $perms;
             list($foo) = array_splice($newitems, $i, 1);
             array_unshift($newperms, $foo);
             array_2D_permute($newitems, $newperms);
         }
         return $permuted_array;
    }
}

$arr=array("Architecture","Mexico","Periodicals","Test");
$result=array_2D_permute($arr);
print_r($result);

จำได้เอามาจาก php.net
ใช้หากินมาหลายงานล่ะ

 Wink
บันทึกการเข้า

หน้า: [1]   ขึ้นบน
พิมพ์