Tách không gian chuỗi php

Actually, this version is better than the last I submitted.  The goal here is to be able to engage in *multiple* delimeter removal passes; for all but the last pass, set the third value to "1", and everything should go well.

    function quotesplit( $splitter=',', $s, $restore_quotes=0 )
    {
        //First step is to split it up into the bits that are surrounded by quotes
        //and the bits that aren't. Adding the delimiter to the ends simplifies
        //the logic further down

        $getstrings = explode('"', $splitter.$s.$splitter);

        //$instring toggles so we know if we are in a quoted string or not
        $delimlen = strlen($splitter);
        $instring = 0;

        while (list($arg, $val) = each($getstrings))
        {
            if ($instring==1)
            {
                if( $restore_quotes )
                {
                    //Add the whole string, untouched to the previous value in the array
                    $result[count($result)-1] = $result[count($result)-1].'"'.$val.'"';
                } else {
                    //Add the whole string, untouched to the array
                    $result[] = $val;
                }
                $instring = 0;
            }
            else
            {
                //Break up the string according to the delimiter character
                //Each string has extraneous delimiters around it (inc the ones we added
                //above), so they need to be stripped off
                $temparray = split($splitter, substr($val, $delimlen, strlen($val)-$delimlen-$delimlen+1 ) );

                while(list($iarg, $ival) = each($temparray))
                {
                    $result[] = trim($ival);
                }
                $instring = 1;
            }
        }

        return $result;
    }

phát nổ () là một hàm tích hợp trong PHP được sử dụng để tách một chuỗi thành các chuỗi khác nhau. Hàm phát nổ () tách một chuỗi dựa trên dấu phân cách chuỗi, i. e. nó phân tách chuỗi bất cứ nơi nào xuất hiện ký tự phân cách. Hàm này trả về một mảng chứa các chuỗi được tạo bằng cách tách chuỗi ban đầu

cú pháp

array explode(separator, OriginalString, NoOfElements)

Thông số. Chức năng phát nổ chấp nhận ba tham số trong đó hai tham số bắt buộc và một tùy chọn. Tất cả ba tham số được mô tả dưới đây

  1. dải phân cách. Ký tự này chỉ định các điểm tới hạn hoặc các điểm mà tại đó chuỗi sẽ phân tách, i. e. bất cứ khi nào ký tự này được tìm thấy trong chuỗi, nó tượng trưng cho sự kết thúc của một phần tử của mảng và bắt đầu một phần tử khác
  2. Chuỗi gốc. Chuỗi đầu vào sẽ được chia thành mảng
  3. NoOfElements. Đây là tùy chọn. Nó được sử dụng để xác định số phần tử của mảng. Tham số này có thể là bất kỳ số nguyên nào (dương, âm hoặc 0)
    • Tích cực (N). Khi tham số này được truyền với giá trị dương có nghĩa là mảng sẽ chứa số phần tử này. Nếu số phần tử sau khi tách đối với dấu phân cách xuất hiện lớn hơn giá trị này thì N-1 phần tử đầu tiên giữ nguyên và phần tử cuối cùng là toàn bộ chuỗi còn lại
    • Tiêu cực (N). Nếu giá trị âm được truyền dưới dạng tham số thì N phần tử cuối cùng của mảng sẽ bị cắt bỏ và phần còn lại của mảng sẽ được trả về dưới dạng một mảng
    • Số không. Nếu tham số này bằng 0 thì mảng trả về chỉ có một phần tử i. e. toàn bộ chuỗi
    • Khi tham số này không được cung cấp, mảng được trả về chứa tổng số phần tử được hình thành sau khi tách chuỗi bằng dấu phân cách

      Các tập lệnh được sử dụng trong các ví dụ của hướng dẫn này đã được viết dựa trên phiên bản PHP 8. Thực hiện tác vụ sau trước khi thực hiện các ví dụ về tập lệnh này

      1. Cài đặt apache2 và PHP 8
      2. Đặt quyền thực thi cho tất cả các tệp và thư mục trong thư mục /var/www/html nơi tất cả các tệp PHP sẽ được lưu trữ

      Tách chuỗi bằng hàm Explode()

      Hàm phát nổ () được sử dụng để phân chia một chuỗi dựa trên một giá trị dấu tách cụ thể là một chuỗi khác. Cú pháp của chức năng này được đưa ra dưới đây

      cú pháp

      mảng phát nổ ( chuỗi $delimiter , string $string [, int $limit] )

      Hai đối số đầu tiên của các hàm này là đối số bắt buộc và đối số thứ ba là tùy chọn. Đối số đầu tiên chứa giá trị dấu phân cách được sử dụng để phân tách chuỗi. Đối số thứ hai chứa chuỗi chính sẽ được chia dựa trên dấu phân cách. Giá trị đối số thứ ba được sử dụng để giới hạn số lần phân tách có thể là số dương hoặc số âm. Nó trả về một mảng các giá trị chuỗi sau khi chia chuỗi

      Sử dụng hàm Explode()

      Các cách sử dụng khác nhau của hàm phát nổ() không có đối số tùy chọn và có đối số tùy chọn đã được trình bày trong phần này của hướng dẫn này

      Ví dụ 1. Tách chuỗi dựa trên không gian và lưu trữ các giá trị vào một mảng

      Tạo tệp PHP với tập lệnh sau để chia chuỗi dựa trên khoảng trắng. Ở đây, phát nổ() sẽ trả về một mảng gồm ba phần tử sau khi chia chuỗi, “Tôi thích lập trình” dựa trên không gian. Tiếp theo, các giá trị của mảng sẽ được in ra bằng cách sử dụng chỉ số

Chủ đề