งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

4 Array ● array types ● foreach loop ● Use arrays with Web forms

งานนำเสนอที่คล้ายกัน


งานนำเสนอเรื่อง: "4 Array ● array types ● foreach loop ● Use arrays with Web forms"— ใบสำเนางานนำเสนอ:

1 4 Array ● array types ● foreach loop ● Use arrays with Web forms
● Built-in functions Vikram Vaswani. “Beginner’s Guide PHP”. Mc Graw Hill.(2009). p.85 อ.ธีระพล ลิ้มศรัทธา

2 การเก็บของอเรย์ <?php // define array $fruits = array('apple', 'banana', 'pineapple', 'grape'); ?> การเข้าถึง ใช้ อินเด็กซ์ทีเริ่มจากศูนย์ $fruits[0] $fruits[3]

3 การใช้คีย์แทน อินเด็กซ์
<?php // define array $fruits = array( 'a' => 'apple‘, 'b' => 'banana‘, 'p' => 'pineapple‘, 'g' => 'grape’ ); ?> การเข้าถึง ใช้ $fruits['a']

4 การกำหนด อาร์เรย์ <?php // Type1. define array $frults = array(‘apple’, ‘grap’, ‘pinapple’, ‘banan’); //Type2. $cars[0 ] = 'Ferrari'; $cars[1 ] = 'Lamborghini'; ?>

5 การกำหนดค่าอินเด็กซ์อาร์เรย์อัตโนมัติ
ในกรณีที่ไม่ทราบว่าจะใช้อินเด็กซ์เท่าใด เราทำได้โดยการไม่ เติมค่าเลขอินเด็กซ์ <?php // define array $cars[ ] = 'Ferrari'; $cars[ ] = 'Lamborghini'; ?>

6 การกำหนดค่าทำได้สองแบบสำหรับการใช้คีย์
<?php // define array $data['username'] = 'john'; $data['password'] = 'secret'; $data['host'] = ' '; ?> <?php // define array $data = array( 'username' => 'john', 'password' => 'secret', 'host' => ' ' ); ?>

7 การอ่านชื่อคีย์ <?php // define array $data = array( 'username' => 'john', 'password' => 'secret', 'host' => ' ' ); echo array_keys($data)[0]; //print username ?> เมื่อต้องการอ่านทุกคีย์ เราอาจใช้การวนลูบอ่านได้

8 การเข้าถึง อาร์เรย์ด้วยคีย์อินเด็กซ์
<?php // define array $data = array( 'username' => 'john', 'password' => 'secret', 'host' => ' ' ); // use array value Echo ?> เราเคยได้ใช้อาร์เรย์ในลักษณะนี้มาแล้ว ในอ้างอิงตัวแปร $_GET, $_POST เมื่อมีการคลิกปุ่ม Submit เราอ้างอิงอินพุทแต่ในฟอร์มได้ด้วยอาร์เรย์แบบนี้

9 การปรับปรุงค่าในอาร์เรย์
<?php // define array $meats = array( 'fish', 'chicken', 'ham', 'lamb‘ ); // change 'ham' to 'turkey' $meats[2] = 'turkey'; ?>

10 การลบค่าในอะเรย์ <?php // define array $meats = array( 'fish‘, 'chicken‘, 'ham‘, 'lamb’ ); // remove 'fish' unset($meats[0]); // จะทำให้ ณ อินเด็กซ์นี้เป็น Null ?> ถ้าเราลบสมาชิกของอาร์เรย์ด้วยวิธีนี้ ที่อยู่ตรงกลางของอาร์เรย์ จะเกิดอะไรขึ้นกับค่าอื่นๆ ? ถ้าเราลบอาร์เรย์ด้วยวิธี unset( ) PHP จะกำหนด ที่อินเด็กซ์นั้นเป็น NULL

11 หาขนาดของอะเรย์ count() หรือ sizeof( ) function ตัวอย่างการใช้
<?php // define array $data = array('Monday', 'Tuesday', 'Wednesday'); // get array size echo 'The array has ' . count($data) . ' elements'; ?> อาร์เรย์มีขนาดจำกัดหรือไม่ ในกรณีที่ใส่อาร์เรย์อัตโนมัติ? ไม่จำกัด แต่ถ้าจะจำกัดก็เพียงการกำหนดตัวแปรในหน่วยความจำ ในการ php.ini ด้วยตัวแปร memory_limit

12 Nested Array <?php $phonebook = array( array( 'name' => 'Raymond‘,'tel' => ' ‘,' ' => 'name' => 'Harold‘, 'tel' => ' ‘, ' ' => ); echo $phonebook[1]['tel']; //print ?> PHP ยังสามารถรวมอาร์เรย์ โดยการวางอาร์เรย์อีกตัวหนึ่งไว้ในอาร์เรย์อีกตัวหนึ่ง การเรียกสมาชิกภายในอาร์เรย์ ก็มีกันตามลำดับ การซ้อนกันของอาร์เรย์ จากตัวอย่างนี้แสดงการเรียกอาร์เรย์ที่ สอง(tel) ที่อยู่ในอาร์เรย์แรก ($phonebook)

13 Loop in Array <?php $cities = array('London', 'Paris', 'Madrid', 'Bombay', 'Jakarta'); // iterate over array for ($i=0; $i<count($cities); $i++) { echo $cities[$i] . "<br/>"; } ?> วิธีทั่วไปในการเข้าถึงอาร์เรย์ได้ด้วยการ วนรอบของ for { … } โดยนับจำนวนสมาชิกในอาร์เรย์ ด้วยเมธอท count( ) ตามตัวอย่างต่อไปนี้

14 การอ่าน nested array <?php $phonebook = array(
array('Harold', ); for ($i=0; $i<count($phonebook);$i++){ echo $i ; for($j = 0; $j<count($phonebook[$i]); $j++){ echo $phonebook[$i][$j]; } echo '<br>'; ?> <table> <tr> <td>No.</td><td>Name</td><td>tel</td><td> </td> </tr> <?php $phonebook = array( array('Harold', ); for ($i=0; $i<count($phonebook);$i++){ echo '<tr>'; echo '<td>'. $i . '</td>'; for($j = 0; $j<count($phonebook[$i]); $j++){ echo '<td>'.$phonebook[$i][$j].'</td>'; } echo '</tr>'; ?> </table>

15 foreach loop foreach ($cities as $value) { echo "$value <br/>"; } foreach ($cities as $key=>$value) { echo “Key:” . $key. “ Value:”. $value .”<br/>"; ยังมีวิธีที่ง่ายกว่าคือ การการคำสั่ง foreach คำสั่งนี้ใช้ได้กับ PHP 4.0 ขึ้นไป จากตัวอย่างที่แล้ว เราจะใช้ foreach ใส่ตัวแปรอาร์เรย์ ($cities) และตัวแปรสมาฃิกของอาร์เรย์ ($c)

16 Try: Create data Table <?php $phonebook = array( array( ); ?> ให้ใช้คำสั่ง foreach

17 ArrayIterator (New PHP5.0)
$cities = array( "United Kingdom" => "London“,"United States" => "Washington"); $iterator = new ArrayIterator($cities); $iterator->rewind(); //start at begin of array // rewind to beginning of array while($iterator->valid()) { print $iterator->current() . " is in " . $iterator->key() . " <br/> "; $iterator->next(); } แต่ในกรณีที่ใช้อาร์เรย์เป็นแบบ มีคีย์เชื่อมกับค่า จะใช้ออปเจ็กต์ ArrayIterator แทน (ใช้กับ PHP 5 ขึ้นไป) จากตัวอย่างนี้ จะต้องสร้างออปเจ็กต์ของ ArrayIterator ก่อน และเรียกเมธอด rewind ของออปเจ็กต์นี้ เพื่อให้เริ่มต้นที่สมาชิกของอาร์เรย์ While loop ทำงานไปเรื่องจน valid เป็นเท็จ (หมายความว่าอ่านจนสมาชิกสุดท้าย) สมาชิกแต่ละตัวของอาร์เรย์อ่านด้วย current( ) และคีย์ของอาร์เรย์อ่านด้านด้วย key( ) สุดท้ายจะต้องเลื่อนไปยังสมาชิกต่อไปด้วย next( ) Output: London is in United Kingdom  Washington is in United States 

18 Try : Calculate Grade $grades = array( 25, 64, 23, 87, 56, 38, 78, 57, 98, 95,81, 67, 75, 76, 74, 82, 36, 39,54, 43, 49, 65, 69, 69, 78, 17, 91); ทำคำนวณ เกรด A>79, B>69, C>59, D>49, F<50 และแสดง เป็นตาราง <!DOCTYPE HTML><html><head><title></title></head><body><h2>Test Array</h2><?php$grades = array( 25, 64, 23, 87, 56, 38, 78, 57, 98, 95,81, 67, 75, 76, 74, 82, 36, 39,54, 43, 49, 65, 69, 69, 78, 17, 91);$count = count($grades);$total = $upper = $lower = 0;foreach ($grades as $g) { $total += $g; if ($g <= 20) {$lower++;} if ($g >= 80) {$upper++;}}echo "count: $count, total: $total";echo "<br/> lower than 20: $lower, Greater than 80: $upper";echo "<br/> max: " . max($grades) ;echo "<br/>min: " .min($grades);?> </body><html>

19 Array in Form <form method="post" action="array-form.php">
Select your favourite artists: <br /> <select name="artists[ ]" multiple="true"> <option value="Britney Spears">Britney Spears</option> <option value="Aerosmith">Aerosmith</option> <option value="Black-Eyed Peas">Black-Eyed Peas</option> </select> <p><input type="submit" name="submit" value="Submit" /> </form> <form method="post" action="array-form.php"> Select your favourite artists: <br /> <select name="artists[ ]" multiple="true"> <option value="Britney Spears">Britney Spears</option> <option value="Aerosmith">Aerosmith</option> <option value="Black-Eyed Peas">Black-Eyed Peas</option> <option value="Diana Ross">Diana Ross</option> <option value="Foo Fighters">Foo Fighters</option> </select> <p><input type="submit" name="submit" value="Submit" /> </form> <ul> <?php if (isset($_POST['artists'])) { echo "You select:"; foreach ($_POST['artists'] as $t) { echo "<li>$t</li> \r\n"; } ?> </ul> ส่งอะเรย์ ในชื่อ $_POST['artists'] ทดลองสร้างฟอร์ม รับข้อมูลแล้วแสดงผลการเลือก

20 Array in Form <ul> <?php if (isset($_POST['artists'])){ echo "You select:"; foreach ($_POST['artists'] as $t) { echo "<li>$t</li> \r\n"; } ?> </ul>

21 Try: การเลือก Pizza Before
<form method="post" action="pizza.php"> Select your favourite pizza toppings: <br /> peppers</input> <input type="checkbox" name="toppings[]" value="olives">Olives</input> <input type="checkbox" name="toppings[]" value="mint">Mint</input> <input type="checkbox" name="toppings[]" value="bacon">Bacon</input> <p><input type="submit" name="submit" value="Submit" /></p> </form> Before After <html> <head> <title>Pizza Topping Selector</title> </head> <body> <h2>Pizza Topping Selector</h2> You selected the following toppings: <br /> <ul> <?php ?> </ul> <form method="post" action="pizza.php"> Select your favourite pizza toppings: <br /> peppers</input> <input type="checkbox" name="toppings[]" value="olives">Olives</input> <input type="checkbox" name="toppings[]" value="mint">Mint</input> <input type="checkbox" name="toppings[]" value="bacon">Bacon</input> <p><input type="submit" name="submit" value="Submit" /></p> </form> </body> </html>

22 Array Function

23 ตัวอย่างการใช้ฟังก์ชัน explode
<?php // define string $str = 'tinker,tailor,soldier,spy'; // convert string to array // output: ('tinker', 'tailor', 'soldier, 'spy') $arr = explode(',', $str); print_r($arr); ?>

24 สร้างการซุ่มรูปภาพ มีการสุ่มรูปทั้งสองรูป ทั้งมีคำบรรยายใต้รูปด้วย ให้ออกแบบที่มีสอง คอลัมน์ ในลักษณะไดนามิก (ใช้ฟังก์ชัน shuffle()) แม่รักลูก กระต่ายสีขาว


ดาวน์โหลด ppt 4 Array ● array types ● foreach loop ● Use arrays with Web forms

งานนำเสนอที่คล้ายกัน


Ads by Google