العودة   منتديات المجاوشي > منتديات مجاوشي للترفيه والتسلية > :: RSS :: > Arabic Rss
Arabic Rss Arabic Rss تنويه : المعهد غير مسؤول عن ما يحويه هذا القسم .... وجب لاتنويه والتحذير

الملاحظات


[استفسار] اي دالتين احسن فى الاستخدام؟

Arabic Rss


 
 
أدوات الموضوع انواع عرض الموضوع
  #1  
قديم 12-20-2011
الصورة الرمزية RSS
RSS غير متواجد حالياً
ناقل الأخبار
 
تاريخ التسجيل: 11 - 2 - 10
المشاركات: 657,909
RSS is on a distinguished road
افتراضي [استفسار] اي دالتين احسن فى الاستخدام؟

بسم الله الرحمن الرحيم
اى دالتين احسن فى الاستخدام فى الكلاس يعنى دوال الى بتستخدم دوال النصوص ولا دوال التى تستخدم دوال المصوفات؟
رمز PHP:
//----------------------------------------------------------------------
class Configer{
//----------------------------------------------------------------------
private static $_data =array();
//----------------------------------------------------------------------
public static function set($stringkey,$val){//config.key.key.key ,value
$keys=explode('.',trim($stringkey,'.'));
$parentk=array_shift($keys);
if(
count($keys) >0){
$stringkey=implode('.',$keys);
self::$_data[$parentk]=isset(self::$_data[$parentk])?self::$_data[$parentk]:array();
self::$_data[$parentk]=&self::setVal($stringkey,$val, self::$_data[$parentk]);
}else{
self::$_data[$parentk]=$val;
}
unset(
$keys,$stringkey,$parentk);unset($val,$key);
}
//----------------------------------------------------------------------
public static function &setVal($stringkey,$val,&$parent){
$keys=explode('.',trim($stringkey,'.'));
$parentk=array_shift($keys);
$parent[$parentk]=(count($keys) == 0)?$val:(isset($parent[$parentk])?$parent[$parentk]:array());
if(
count($keys) > 0){
$key=array_shift($keys);
$stringkey=(count($keys)>0)?implode('.',$keys):null;
if(!empty(
$stringkey)){
$parent[$parentk][$key]=(!isset($parent[$parentk][$key]))?array():$parent[$parentk][$key];
$parent[$parentk][$key]=&self::setVal($stringkey,$val,$parent[$parentk][$key]);
}else{
$parent[$parentk][$key]=$val;
}
}
unset(
$keys,$stringkey,$parentk);unset($val,$key);
return
$parent ;
}
//----------------------------------------------------------------------
public static function set2($stringkey,$val){//config.key.key.key ,value
$stringkey=trim($stringkey,'.');
$lenght=stripos($stringkey,'.')?stripos($stringkey,'.'):false;
$parentk=($lenght == false)?$stringkey:substr($stringkey,0,$lenght);
$stringkey=($lenght == false)?null:substr($stringkey,$lenght);
if(!empty(
$stringkey)){
self::$_data[$parentk]=isset(self::$_data[$parentk])?self::$_data[$parentk]:array();
self::$_data[$parentk]=&self::setVal2($stringkey,$val, self::$_data[$parentk]);
}else{
self::$_data[$parentk]=$val;
}
unset(
$keys,$stringkey,$parentk);unset($val,$key);
}
//----------------------------------------------------------------------
public static function &setVal2($stringkey,$val,&$parent){
$stringkey=trim($stringkey,'.');
if(empty(
$stringkey))return $parent;
$lenght=stripos($stringkey,'.');
$parentk=substr($stringkey,0,$lenght);
$stringkey=trim(substr($stringkey,$lenght),'.');
$parent[$parentk]=(empty($stringkey))?$val:(isset($parent[$parentk])?$parent[$parentk]:array());
if(!empty(
$stringkey) && is_string($stringkey)){
$lenght=stripos($stringkey,'.')?stripos($stringkey,'.'):false;
$key=($lenght == false)?$stringkey:substr($stringkey,0,$lenght);
$stringkey=($lenght == false)?null:substr($stringkey,$lenght);
if(!empty(
$stringkey)){
$parent[$parentk][$key]=(!isset($parent[$parentk][$key]))?array():$parent[$parentk][$key];
$parent[$parentk][$key]=&self::setVal2($stringkey,$val,$parent[$parentk][$key]);
}else{
$parent[$parentk][$key]=$val;
}
}
unset(
$keys,$stringkey,$parentk);unset($val,$key);
return
$parent ;
}
//----------------------------------------------------------------------
public static function &get($key=false){
if(
$key === false){
return
self::$_data;
}
$keys=explode('.',$key);unset($key);
$parentk=array_shift($keys);
if(isset(
self::$_data[$parentk])){
$parent=&self::$_data[$parentk];
}else{
$parent=false;
}
if(
$parent === false){
return
$parent;
}else if(
count($keys)>0 && is_array($parent)){
foreach(
$keys as $key){
if(isset(
$parent[$key])){
$parent=&$parent[$key];



}else{
return
$parent;
}
}
}
unset(
$keys,$parentk,$key);
return
$parent;
}
//----------------------------------------------------------------------
}
?>


طريقة الاستخدام
رمز PHP:
Configer::set('Config.key1.key2','http://localhost/arabframework/');
Configer::set2('Config2.key1.key2','http://localhost/arabframework/ff');










أكثر...
 

مواقع النشر (المفضلة)


تعليمات المشاركة
لا تستطيع إضافة مواضيع جديدة
لا تستطيع الرد على المواضيع
لا تستطيع إرفاق ملفات
لا تستطيع تعديل مشاركاتك

BB code is متاحة
كود [IMG] متاحة
كود HTML معطلة

الانتقال السريع

المواضيع المتشابهه
الموضوع كاتب الموضوع المنتدى مشاركات آخر مشاركة
[استفسار] شركة آخرى للربح غير جوجل ادسن ! RSS Arabic Rss 0 09-16-2011 08:40 PM
[استفسار] كيف احسن علاقتي بـ جوجل ادسنس RSS Arabic Rss 0 09-04-2011 01:52 PM
[استفسار ] ايه احسن بنك الكترونى غير الباى بال بيقبل مصر RSS Arabic Rss 0 08-19-2011 04:00 AM
[استفسار] : احسن اصدار الفوتوشوب RSS Arabic Rss 0 05-17-2011 07:21 PM
[استفسار] كيف استلم الفلوس من قوقل ادسن ..؟ RSS Arabic Rss 0 11-23-2010 10:30 PM


Loading...


Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd. منتديات بلاك بيري mjawshy.net
المجاوشي للتقنية المتقدمة