Home Products Downloads News Store Support

Stan's Blog

Xojo NthField() and CountFields() functions in PHP

How to use Maxprog products Maxprog's Blog

Compatible with MS Windows Compatible with MacOS

Xojo NthField() and CountFields() functions in PHP


In Xojo there is a handy function I use quite a lot for getting substrings between given delimiters from a piece of text, it is:

NthField(text, delimiter, fieldnumber)

Imagine you have the following text "1/2/3/4", NthField( "1/2/3/4", "/", 3 ) will return 3, that is the third substring between the "/" delimiters. It is that simple! This function works great in Xojo as long as the text is not too big. A few years ago I was porting a Xojo function to PHP that used NthField() so I decided to port the whole function. This is the PHP equivalent:

function nthfield($text, $delimiter, $fieldnumber) {
  $data = explode($delimiter, $text . $delimiter );
  return $data[$fieldnumber-1];

It is that simple, now you have the exact same NthField() in PHP. That function is fully accurate, I have been using it everywhere in my site for years.

Next I needed the related function to count the number of fields for a given delimiter:

CountFields(text, delimiter)

For the sample text we used above, "1/2/3/4", CountFields( "1/2/3/4", "/" ) would return 4, that is, the number of fields enclosed by the "/" delimiter. This is the PHP equivalent:

function countfields($text, $delimiter) {
  return count(explode($delimiter, $text));

As you can see the both functions use simple PHP array functions and since NthField() is slow in Xojo when the text is big, it would be simple to rewrite it :-)

Stan Busk - Software Engineer


Recent questions from our users
  What is the best mail server I can use with MaxBulk Mailer UPDATED Screenshot
  How can I export my lists to a new computer UPDATED Screenshot
  How to send a HTML email Screenshot
  How to hide text in my message Screenshot
  How to transfer FTP accounts between computers Screenshot
  Google ending support for less secure apps YouTube Video
  How to add social networks icons to my message Screenshot
  How do I set up an unsubscribe link Screenshot
  How to export several lists into to a single file Screenshot
  Why do I get timeouts when testing given addresses Screenshot
  What are the Zoho mail settings for MaxBulk Mailer? Screenshot
  iCash has become slow over time Screenshot
  Emails sent but not received Screenshot
  HTML Email is received empty Screenshot
  How to use an alternative text when a tag value is empty Screenshot

▾ Last videos, Online events and Q&A Sessions ▾

▾ Last customer reviews ▾

Did you like this post?

🔐 Secured by Comodo SSL | UptimeRobot - Site Loaded properly