PHP | ImagickKernel separate() Function

The ImagickKernel::separate() function is an inbuilt function in PHP which is used to separate a linked set of kernels and returns an array of ImagickKernels. This function is used to count the kernels in an object or see the kernels of an object.
Syntax:
array ImagickKernel::separate( void )
Parameters: This function doesn’t accepts any parameter.
Return Value: This function returns an array value containing the ImagickKernels.
Below programs illustrate the ImagickKernel::separate() function in PHP:
Program 1: This program counting all the kernels in an ImagickKernel.
| <?php  // Create a new imagick object $imagick= newImagick(  $matrix1= [     [-1, -1, -1],     [4, 4, 4],     [1, 1, 1], ];  $matrix2= [     [-1, 0, 0],     [0, 0, 1],     [-1, 0, 1], ];  $matrix3= [     [-1, 1, 0],     [0, 0, 1],     [-1, 0, 1], ];  $matrix4= [     [0, 1, 0],     [0, 0, 1],     [-1, 0, 1], ];  // Create ImagickKernel objects from matrices $kernel1= ImagickKernel::fromMatrix($matrix1); $kernel2= ImagickKernel::fromMatrix($matrix2); $kernel3= ImagickKernel::fromMatrix($matrix3); $kernel4= ImagickKernel::fromMatrix($matrix4);  // Add the kernels $kernel1->addKernel($kernel2); $kernel1->addKernel($kernel3); $kernel1->addKernel($kernel4);  $kernelList= $kernel1->separate();  echo'Total number of attached kernels are: '; echocount($kernelList); ?>  | 
Output:
Total number of attached kernels are: 4
Program 2 (Getting all ImagickKernel in a object):
| <?php  // Create a new imagick object $imagick= newImagick(  $matrix1= [     [-1, -1, -1],     [4, 4, 4],     [1, 1, 1], ];  $matrix2= [     [-1, 0, 0],     [0, 0, 1],     [-1, 0, 1], ];  // Create ImagickKernel objects from matrices $kernel1= ImagickKernel::fromMatrix($matrix1); $kernel2= ImagickKernel::fromMatrix($matrix2);  // Add the kernel $kernel1->addKernel($kernel2);  $kernelList= $kernel1->separate();  echo'All the kernels are: '; print("<pre>".print_r($kernelList, true)."</pre>"); ?>  | 
Output:
All the kernels are:
Array
(
    [0] => ImagickKernel Object
        (
            [0] => Array
                (
                    [0] => Array
                        (
                            [0] => -1
                            [1] => -1
                            [2] => -1
                        )
                    [1] => Array
                        (
                            [0] => 4
                            [1] => 4
                            [2] => 4
                        )
                    [2] => Array
                        (
                            [0] => 1
                            [1] => 1
                            [2] => 1
                        )
                )
        )
    [1] => ImagickKernel Object
        (
            [0] => Array
                (
                    [0] => Array
                        (
                            [0] => -1
                            [1] => 0
                            [2] => 0
                        )
                    [1] => Array
                        (
                            [0] => 0
                            [1] => 0
                            [2] => 1
                        )
                    [2] => Array
                        (
                            [0] => -1
                            [1] => 0
                            [2] => 1
                        )
                )
        )
)
Reference: https://www.php.net/manual/en/imagickkernel.separate.php
Whether you’re preparing for your first job interview or aiming to upskill in this ever-evolving tech landscape, zambiatek Courses are your key to success. We provide top-quality content at affordable prices, all geared towards accelerating your growth in a time-bound manner. Join the millions we’ve already empowered, and we’re here to do the same for you. Don’t miss out – check it out now!
 
				 
					

