1. Go to this page and download the library: Download halpdesk/perform library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
halpdesk / perform example snippets
use Halpdesk\Perform\Abstracts\Model;
use Halpdesk\Perform\Contracts\Model as ModelContract;
class Person extends Model implements ModelContract
{
static public $query = PersonQuery::class;
protected $fields = [
'id',
'name',
'age',
'birthDate',
];
protected $casts = [
'name' => 'string',
'age' => 'integer',
'birthDate' => 'datetime',
];
protected $dates = [
'birthDate',
];
public $dateFormat = 'Y-m-d';
}
use Halpdesk\Perform\Abstracts\Query;
use Halpdesk\Perform\Contracts\Query as QueryContract;
class PersonQuery extends Query implements QueryContract
{
protected $model = Person::class;
public function load() : void
{
/*
* Use any method to set the data: read from file, make HTTP call, query database, etc.
* In this example, we use a json file which contains all person data
*/
$data = json_file_to_array('./person.json');
$this->setData(collect($data));
}
/*
* create(), update() and delete() must be implemented
* in this class in order to actually use those functions
*
* it will not be covered in this simple example (yet).
*/
}
// Constructs a Person with data associated with id:1 from person.json
$person = Person::find(1);
// Return a collection with Persons named Billy from person.json
$persons = Person::where("name", "Billy")->get();
// Return a full collection with Persons constructed from person.json
$all = Person::all();
// Throws a ModelNotFoundException (since id:7 does not exist in the person loaded)
$person = Person::findOrFail(7);
// Convert the Person class to an array
$personArray = Person::findOrFail(2)->toArray();
// Create a new person -- this method calls the query class to attempt store the person in the data source (i.e. person.json)
// But the create method must be implemented in the query class; if it is not, an `NotImplementedException` will be thrown
$newPerson = Person::create([
"name" => "Ester",
"age" => 55,
"birthDate" => "1964-07-02"
]);
// Same as above, but creates a temporary object which is not meant to be stored in the data source
$tempNewPerson = Person::make([
"name" => "Ester",
"age" => 55,
"birthDate" => "1964-07-02"
]);
// Other methods that needs to be implemented to work, or otherwise throw an `NotImplementedException`
$person->save();
$person->update();
$person->delete();
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.