本文整理汇总了PHP中CMbString::removeDiacritics方法的典型用法代码示例。如果您正苦于以下问题:PHP CMbString::removeDiacritics方法的具体用法?PHP CMbString::removeDiacritics怎么用?PHP CMbString::removeDiacritics使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CMbString
的用法示例。
在下文中一共展示了CMbString::removeDiacritics方法的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: importFile
/**
* import the csv firstname file
*
* @param string $targetPath filepath
* @param int $start start from
* @param int $count step of import
*
* @return void
*/
function importFile($targetPath, $start, $count)
{
$fp = fopen($targetPath, 'r');
//0 = first line
if ($start == 0) {
$start++;
}
$line_nb = 0;
while ($line = fgetcsv($fp, null, ";")) {
if ($line_nb >= $start && $line_nb < $start + $count) {
$found = false;
$fn = CMbString::removeDiacritics(trim($line[0]));
$sex = trim($line[1]);
$language = CMbString::removeDiacritics(trim($line[2]));
if ($sex == "m,f" || $sex == "f,m") {
$sex = "u";
}
$firstname = new CFirstNameAssociativeSex();
$firstname->firstname = $fn;
$firstname->language = $language;
$firstname->loadMatchingObjectEsc();
if ($firstname->_id) {
// found
$found = true;
if ($sex != $firstname->sex) {
$firstname->sex = "u";
}
} else {
// not found
$firstname->sex = $sex;
}
// store & message
if ($msg = $firstname->store()) {
CAppUI::stepAjax($msg, UI_MSG_WARNING);
} else {
if ($found == true) {
CAppUI::stepAjax("prénom <strong>{$fn}</strong>, mis à jour <strong>[{$firstname->sex}]</strong>");
} else {
CAppUI::stepAjax("prénom <strong>{$fn}</strong>, ajouté <strong>[{$firstname->sex}]</strong>");
}
}
}
$line_nb++;
}
return;
}
示例2: naturalSort
/**
* Collection natural sort utility with diacritic
*
* @param array $array The array to sort
*
* @return array
*/
static function naturalSort(&$array)
{
uasort($array, function ($a, $b) {
return strnatcasecmp(CMbString::removeDiacritics($a), CMbString::removeDiacritics($b));
});
}
示例3: reset
$group_id = $group->_id;
$where['sejour.group_id'] = " = '{$group_id}'";
$where['sejour.entree'] = "BETWEEN '" . reset($dates) . "' AND '" . end($dates) . "'";
$nb_rpus = $rpu->countList($where, null, $ljoin);
$percent = CValue::get("_percent") * $nb_rpus;
$percent = $percent / 100;
$sql = "SELECT TRIM(TRAILING '\r\n' from substring_index( `diag_infirmier` , '\\n', 1 )) AS categorie, COUNT(*) as nb_diag\n FROM `rpu`\n LEFT JOIN `sejour` ON `rpu`.sejour_id = `sejour`.sejour_id\n WHERE `diag_infirmier` IS NOT NULL\n AND `group_id` = '{$group_id}'\n AND `entree` BETWEEN '" . reset($dates) . "' AND '" . end($dates) . "'\n GROUP BY categorie\n HAVING nb_diag > {$percent}";
$result = $ds->exec($sql);
$areas = array();
while ($row = $ds->fetchArray($result)) {
$areas[] = $row["categorie"];
}
$areas[] = "AUTRES DIAGNOSTICS";
foreach ($areas as &$_area) {
$_area = rtrim($_area);
$_area = CMbString::removeDiacritics($_area);
$_area = strtoupper($_area);
}
$areas = array_unique($areas);
$data[$axe]["options"]["title"] .= utf8_encode(" (" . count($areas) . " catégories)");
$series =& $data[$axe]['series'];
$totaux = array();
// On compte le nombre total de rpu par date
foreach ($dates as $i => $_date) {
$_date_next = CMbDT::date("+1 {$period}", $_date);
$where['sejour.entree'] = "BETWEEN '{$_date}' AND '{$_date_next}'";
$totaux[$i] = $rpu->countList($where, null, $ljoin);
}
$j = 0;
foreach ($areas as $value) {
unset($where[10]);
示例4: _cmpFieldNaturalAccentsDiacritics
/**
* Diacritic insensitive comparison callback for natural sorting
*
* @param CModelObject $a Object having a self::$sortField property
* @param CModelObject $b Object having a self::$sortField property
*
* @return int Comparison result
*/
protected static function _cmpFieldNaturalAccentsDiacritics($a, $b)
{
$sort_field = self::$sortField;
return strnatcasecmp(CMbString::removeDiacritics($a->{$sort_field}), CMbString::removeDiacritics($b->{$sort_field}));
}
示例5: makeUsernamePassword
function makeUsernamePassword($first_name, $last_name, $id = null, $number = false, $prepass = "mdp")
{
$length = 20 - strlen($id);
$this->_user_username = substr(preg_replace($number ? "/[^a-z0-9]/i" : "/[^a-z]/i", "", strtolower(CMbString::removeDiacritics(($first_name ? $first_name[0] : '') . $last_name))), 0, $length) . $id;
$this->_user_password = $prepass . substr(preg_replace($number ? "/[^a-z0-9]/i" : "/[^a-z]/i", "", strtolower(CMbString::removeDiacritics($last_name))), 0, $length) . $id;
}
示例6: LIKE
$query = "SELECT * FROM master WHERE abbrev LIKE('%" . substr($abbrev, 0, $i) . "%') ORDER BY code ASC LIMIT 1";
} else {
$query = "SELECT * FROM master WHERE abbrev = '" . substr($abbrev, 0, $i) . "' LIMIT 1";
}
$result = $ds->exec($query);
$row = $ds->fetchArray($result);
$level_SID = $row['SID'];
if ($level_SID && $prev_SID != $level_SID) {
$query = "UPDATE `master` SET `id" . ($i - $offset) . "` = {$level_SID} WHERE SID = {$SID}";
$ds->exec($query);
$prev_SID = $level_SID;
} else {
$offset++;
}
}
$label = str_replace("'", "\\'", CMbString::removeDiacritics($diff[3], CMbString::UPPERCASE));
// Insertion des libellés dans toutes les langues
$query = "INSERT into libelle (\r\n `SID`, `source`, `valid`, `author`,\r\n `libelle`, `FR_OMS`, `EN_OMS`, `GE_DIMDI`, `GE_AUTO`, `FR_CHRONOS`) VALUES (\r\n {$SID},'S','1','atih',\r\n '" . $label . "','" . $label . "','" . $label . "','" . $label . "','" . $label . "','" . $label . "')";
$ds->exec($query);
// Inutile vu qu'on n'a pas les descriptions dans le CSV
// On récupère la clé primaire du dernier libellé ajouté
/*$query = "SELECT * FROM libelle WHERE 1 ORDER BY LID DESC LIMIT 1";
$result = $ds->exec($query);
$row = $ds->fetchArray($result);
$LID = $row['LID'];
// Insertion des liens vers les libellés dans toutes les langues
$query = "INSERT into `descr` (`SID`, `LID`) VALUES ($SID, $LID)";
$ds->exec($query);*/
}
CAppUI::stepAjax(count($list_diff) . " codes supplémentaires ont été ajoutés dans la CIM10", UI_MSG_OK);
示例7: array
* $Id$
*
* @package Mediboard
* @subpackage patients
* @author SARL OpenXtrem <dev@openxtrem.com>
* @license GNU General Public License, see http://www.gnu.org/licenses/gpl.html
* @version $Revision$
* @link http://www.mediboard.org
*/
CCanDo::check();
$needle = CValue::request('_search_constants', 0);
$list_constantes = CConstantesMedicales::$list_constantes;
$results = array();
if ($needle) {
foreach ($list_constantes as $_constant => $params) {
if (strpos($_constant, 'cumul') !== false) {
continue;
}
$search_elements = array();
$search_elements[] = CMbString::removeDiacritics(strtolower($_constant));
$search_elements[] = CMbString::removeDiacritics(strtolower(CAppUI::tr("CConstantesMedicales-{$_constant}")));
$search_elements[] = CMbString::removeDiacritics(strtolower(CAppUI::tr("CConstantesMedicales-{$_constant}-court")));
$search_elements[] = CMbString::removeDiacritics(strtolower(CAppUI::tr("CConstantesMedicales-{$_constant}-desc")));
if (strpos(implode('|', $search_elements), $needle) !== false) {
$results[] = $_constant;
}
}
}
$smarty = new CSmartyDP();
$smarty->assign('results', $results);
$smarty->display('inc_autocomplete_constants.tpl');
示例8: addUniteFonctionnelle
function addUniteFonctionnelle(DOMNode $elParent, COperation $operation)
{
$salle = $operation->updateSalle();
$nom = CMbString::removeDiacritics($salle->nom);
$nom = str_replace("'", "", $nom);
$nom = CMbString::convertHTMLToXMLEntities($nom);
$this->addCodeLibelle($elParent, "uniteFonctionnelle", substr($nom, 0, 10), "");
}