View Single Post
ישן 28-05-09, 19:08   # 10
vadimg88
חבר מתקדם
 
מיני פרופיל
תאריך הצטרפות: Feb 2008
גיל: 37
הודעות: 710

vadimg88 לא מחובר  

הנה זה יתמוך ב multibyte וגם הורדתי את ה preg_match והחלפתי בפקודת IF פשוטה.

PHP קוד:
<?php

/**
 * Count number of chars in a string 
 * Supports multi byte chars
 *
 * @param string $string
 */
function countChars$string$encoding='UTF-8' )
{
    return 
mb_strlen($string$encoding);
}

/**
 * Check if the given int is between two values
 *
 * @param int $value
 * @param int $firstElement
 * @param int $secondElement
 * @return bool
 */
function valueInBetween$value$firstElement$secondElement )
{
    return ( (int) 
$value $firstElement && (int) $value $secondElement ) ? TRUE FALSE;
}

# Count english
$string "asfcas";
echo 
countChars($string);

# Count hebrew multi byte
$string "דגעגכדעיגד";
echo 
countChars($string);

# Check if it's bettwen two values, English
$string "asfcas";
var_dump(valueInBetween(countChars($string), 4111)); // true

# Check if it's bettwen two values, Hebrew
$string "שגדעגיעק";
var_dump(valueInBetween(countChars($string), 4111)); // true

$string "שגדעגיעק";
var_dump(valueInBetween(countChars($string), 12111)); // false
  Reply With Quote