PHPackages                             akourpro/wheat - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. akourpro/wheat

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

akourpro/wheat
==============

Wheat is a PHP library that greatly simplifies code writing for developers. It is characterized by many concise and secure functions.

501PHP

Since Nov 11Pushed 7mo ago1 watchersCompare

[ Source](https://github.com/akourpro/wheat)[ Packagist](https://packagist.org/packages/akourpro/wheat)[ RSS](/packages/akourpro-wheat/feed)WikiDiscussions main Synced today

READMEChangelog (1)DependenciesVersions (3)Used By (0)

القمح
=====

[](#القمح)

القمح هي مكتبة PHP تقوم بتسهيل كتابة الأكواد للمطورين بدرجة كبيرة جدًا، حيث انها تمتاز بوظائف كثيرة ومختصرة وآمنة.

استيراد المكتبة
---------------

[](#استيراد-المكتبة)

- يمكنك تحميل المكتبة من خلال Github مباشرة.
- او يمكنك تحميلها عبر الأمر التالي

```
git clone https://github.com/akourpro/wheat.git
```

الوظائف الرئيسية
----------------

[](#الوظائف-الرئيسية)

مثال: جلب البيانات من قاعدة البيانات:

### `dbSelect($table, $selects, $where = null, $vars = null)`

[](#dbselecttable-selects-where--null-vars--null)

#### المدخلات:

[](#المدخلات)

- `$table`: اسم الجدول المطلوب جلب البيانات منه.
- `$selects`: الخلايا المراد جلب بياناتها.
- `$where` (اختياري): شرط البحث.
- `$vars` (اختياري): متغيرات شرط البحث.

#### المخرجات:

[](#المخرجات)

- تقوم الدالة بتخزين النتائج في مصفوفة باسم `$rows`.
- يتم تخزين عدد الصفوف التي تم ايجادها في متغير باسم `$countrows`.

كيفية الاستخدام
---------------

[](#كيفية-الاستخدام)

1. **الاستعلام عن البيانات:**

```
dbSelect($table, $selects, $where = null, $vars = null);
```

مثال واقعي:

```
$columns = "column1, column2";
$where = "WHERE name = ?";
$value = ["wheat"];
dbSelect('table', $columns, $where, $value);
```

3. **إدراج بيانات جديدة:**

```
dbInsert($table, $columns, $vars);
```

مثال واقعي:

```
$columns = "name, email, password";
$values = [$name, $email, $password];
dbInsert("users", $columns, $values);
```

4. **تحديث البيانات:**

```
dbUpdate($table, $columns, $vars, $where = null);
```

مثال واقعي:

```
$id = 1;
$columns = "name = ?, email = ?, password = ?";
$values = [$name, $email, $password, $id];
$where = "WHERE id = ?";
dbUpdate("users", $columns, $values, $where);
```

5. **حذف بيانات:**

```
dbDelete($table, $where = null, $vars = null);
```

مثال واقعي:

```
$where = "WHERE name = ?";
$values = ["Akour"];
dbDelete("users", $where, $values);
```

رفع الملفات
-----------

[](#رفع-الملفات)

في مكتبة قمح تم تطوير نظام مخصص من أجل التعامل مع الملفات على السيرفر

```
up($name, $input, $dir, $max_size);
```

- المتغير `$name` = يتم تغيير اسم الملف الاصلي الى الاسم الموجود في هذا المتغير
- المتغير `$input` = اسم حقل رفع الملف من نموذج HTML Form (input file)
- المتغير `$max_size` = الحجم الأقصى بالميجابايت (للملف)
- المتغير `$dir` = مسار الرفع (مكان حفظ الملف في السيرفر)

    ### توليد رقم عشوائي غير مكرر في قاعدة البيانات

    [](#توليد-رقم-عشوائي-غير-مكرر-في-قاعدة-البيانات)

```
genCode($table, $column, $type, $size);
```

1. انشاء كود توكن لعملية ما مثلا تحقق بريد او تحقق كلمة سر
2. يقوم الكود انشاء كود جديد ويتأكد هل موجود في قاعدة سابقا ام لا
3. المتغير `$size`: حجم توكن ممكن 8 او 16 او اكثر حسب صعوبة كلما كان حجم اكثر راح يكون طويل
4. المتغير `$table`: الجدول الذي تحقق منه
5. المتغير `$col`: العمود الذي يتحقق منه
6. المتغير `$type`: يقبل نوعين token,id يمكنك استخدام مولد الكود العشوائي مع وظيفة رفع الملفات
حماية المدخلات (النصوص والأرقام)
--------------------------------

[](#حماية-المدخلات-النصوص-والأرقام)

يوجد وظيفتين لحماية المدخلات في مكتبة قمح وهي `safer` وهي تستخدم للنصوص بشكل عام، و `numer` وهي تستخدم للأرقام حصرًا مثال عليها

```
$name = safer($_POST['name']); // لحماية النصوص
$number = numer($_POST['your_age']); // لحماية الأرقام
```

التحققات
--------

[](#التحققات)

يمكنك التحقق من المدخلات في مكتبة قمح بواسطة الوظيفة `check`مثال عليها:

```
check($var, $type);
```

تقوم هذه الوظيفة بالتحقق من نوع المدخلات وتعود بالناتج false في حال كان خطأ

- المتغير `$var`: وهو مخصص لاستقبال القيم
- المتغير `$type`: وهو لتحديد نوع القيم، وأنواع التحققات في مكتبة قمح هي:

1. الأرقام ويرمز لها بـ num
2. البريد الالكتروني، ويرمز له بـ email
3. النصوص ويرمز لها بـ txt
4. الحروف العربية ويرمز لها بـ ar
5. الحروف اللاتينية ويرمز لها بـ en
6. الروابط ويرمز لها بـ url

التعامل مع إعدادات الموقع
-------------------------

[](#التعامل-مع-إعدادات-الموقع)

- للتعامل مع اعدادات المواقع بواسطة مكتبة قمح، نحن نفترض ان لديك جدول في قاعدة البيانات اسمه `settings` ويحتوي على 3 خلايا وهي `id` و `name` و `value` حيث ان الخلية `name` تحتوي على الاسم الذي سيتم التعامل معه بواسطة مكتبة قمح وهي بمثابة key value to array و `value` هي قيمة هذه المصفوفة
- للتعامل معها يمكننا استخدام الأمر التالي:

```
gsite();
```

حيث انه سيقوم بجلب البيانات من قاعدة البيانات

- ومثال واقعي على أمر انشاء جدول `settings` في قاعدة البيانات:

```
CREATE TABLE settings (
id INT PRIMARY KEY AUTO_INCREMENT,
name VARCHAR(255) NOT NULL,
value TEXT NOT NULL
);
```

التنبيهات
---------

[](#التنبيهات)

تستخدم مكتبة قمح تنبيهات [Sweet](https://github.com/sweetalert2/sweetalert2) في عمليات الاستعلامات مثال عليها:

```
sweet($type, $title, $text, $link = null);
```

حيث انها تستقبل منك 3 متغيرات اجبارية وواحد اختياري

- المتغير `$type` وهو مخصص لتحديد نوع الاشعار، وهو يستقبل error و success و warning و info و question وهي المستخدمة بشكل افتراضي بواسطة مكتبة SweetAlerts
- المتغير `$title` وهو مخصص لتحديد عنوان رئيسي للرسالة
- المتغير `$text` وهو مخصص لكتابة نص الرسالة، يمكنك استخدام اكواد HTML
- المتغير `$link` وهو اختياري وليس اجباري، وهو لاعادة توجيه المستخدم الى مسار معين بعد عرض الاشعار، يمكنك كتابة كلمة `here` ليعيد توجيهه الى نفس الصفحة الحالية

مثال واقعي:

```
$type = "error";
$title = "خطأ";
$text = "جميع الحقول مطلوبة !";
sweet($type, $title, $text);
```

النهاية
-------

[](#النهاية)

- هذا الشرح مختصر بشكل كامل وذلك لأجل توضيح الامور الأساسية في هذه المكتبة، لتتعرف على امور أكثر حول هذه المكتبة توجه الى المسار `includes/functions.php` وستجد عند كل وظيفة شرح عام عنها.
- او يمكنك مشاهدة احدى الدروس على اليوتيوب

المتطلبات
---------

[](#المتطلبات)

- يتطلب PHP 7.3 أو أحدث.

المطورين
--------

[](#المطورين)

تم تطوير هذه المكتبة بواسطة:

- [محمد عكور](https://github.com/akourpro)
- [بوجليدة عبدالحق](https://github.com/abdelhakpro)

ترخيص
-----

[](#ترخيص)

\[GPL\]

المساهمة
--------

[](#المساهمة)

الباب مفتوح لجميع المطورين في المساهمة في تطوير المكتبة، ازرع لك سنبلة مع مكتبة قمح

###  Health Score

19

—

LowBetter than 9% of packages

Maintenance44

Moderate activity, may be stable

Popularity6

Limited adoption so far

Community10

Small or concentrated contributor base

Maturity16

Early-stage or recently created project

 Bus Factor1

Top contributor holds 97.3% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/142694462?v=4)[Mohammad Akour](/maintainers/akourpro)[@akourpro](https://github.com/akourpro)

---

Top Contributors

[![akourpro](https://avatars.githubusercontent.com/u/142694462?v=4)](https://github.com/akourpro "akourpro (36 commits)")[![drboudjelida](https://avatars.githubusercontent.com/u/76773604?v=4)](https://github.com/drboudjelida "drboudjelida (1 commits)")

### Embed Badge

![Health badge](/badges/akourpro-wheat/health.svg)

```
[![Health](https://phpackages.com/badges/akourpro-wheat/health.svg)](https://phpackages.com/packages/akourpro-wheat)
```

###  Alternatives

[contentful/rich-text

Utilities for the Contentful Rich Text

123.6M3](/packages/contentful-rich-text)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
