Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <!DOCTYPE html>
- <html>
- <head>
- <title>Price List</title>
- <meta charset="utf-8" />
- </head>
- <body>
- <form method="get" action="#">
- Price List: <textarea name="priceList" rows="15" cols="120"> <table class="priceListTable">
- <tr> <th>Product</th> <th>Category</th> <th>Price</th> <th>Currency</th></tr>
- <tr> <td>8GB DDR3L 1600 KINGSTON SODIMM</td><td>RAM</td><td>87.00</td> <td> USD</td></tr>
- <tr> <td>500GB Toshiba, SATA 6Gb/s, 7200rpm, 32MB</td> <td>HDD</td> <td>18.41</td> <td>BGN </td></tr>
- <tr> <td>AMD A10-5800K X4 3.8GHz, 4MB Cache</td><td>CPU</td> <td> 186.00</td> <td>BGN </td></tr>
- <tr> <td> SSD 2.5", 120GB, Corsair F120 LS, SATA3</td> <td> HDD</td> <td> 180.50</td> <td> BGN </td> </tr>
- <tr> <td>500GB Toshiba, SATA 6Gb/s, 7200rpm, 32MB</td> <td>HDD</td> <td>28.41</td> <td>BGN </td> </tr>
- <tr> <td>ASRock B75M-GL R2.0</td><td>motherboard</td> <td> 47.55</td> <td>EUR</td> </tr>
- <tr> <td>1TB Toshiba, SATA 6Gb/s, 7200rpm, 32MB</td> <td>HDD</td><td> 52.82 </td> <td>EUR</td></tr>
- <tr> <td>16GB Micro SDHC, A-Data, Class10</td><td>RAM </td><td>15.03</td><td>BGN</td></tr>
- <tr> <td>500GB Toshiba, SATA 6Gb/s, 7200rpm, 32MB</td> <td>HDD</td> <td>38.41</td> <td>BGN </td> </tr>
- </table></textarea> <br/>
- <input type="submit" value="Send" />
- </form>
- <?php
- if (!isset($_GET['priceList'])) die;
- $inputHtml = $_GET['priceList'];
- $pattern = "|<td>\s*(.*?)\s*</td>\s*<td>\s*(.*?)\s*</td>\s*<td>\s*(.*?)\s*</td>\s*<td>\s*(.*?)\s*</td>|";
- preg_match_all($pattern, $inputHtml, $matches, PREG_SET_ORDER);
- $categories = [];
- foreach ($matches as $match) {
- $category = html_entity_decode($match[2]);
- $item = [
- 'product' => html_entity_decode($match[1]),
- 'price' => html_entity_decode($match[3]),
- 'currency' => html_entity_decode($match[4])
- ];
- if (!isset($categories[$category])) {
- $categories[$category] = [];
- }
- array_push($categories[$category], $item);
- }
- ksort($categories);
- foreach ($categories as $category => $items) {
- usort($items, function($a, $b) {
- return strcmp($a['product'], $b['product']);
- });
- $categories[$category] = $items;
- }
- echo json_encode($categories);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement